#!/usr/bin/python import sys, time sys.path.insert(0,'/usr/lib/entropy/libraries') sys.path.insert(0,'/usr/lib/entropy/client') sys.path.insert(0,'../libraries') sys.path.insert(0,'../client') # disable pid management sys.argv.append("--no-pid-handling") do_ssl = False do_stdout_logging = True do_port = 1027 if "--ssl" in sys.argv: do_ssl = True if "--nostdout" in sys.argv: do_stdout_logging = False if "--port" in sys.argv: idx = sys.argv.index("--port")+1 try: do_port = int(sys.argv[idx]) except (IndexError, ValueError,): pass from entropy.const import * etpConst['community']['mode'] = True etpConst['socket_service']['session_ttl'] = 300 import entropy.tools as entropyTools from entropy.services.system.interfaces import Server as SystemManagerServerInterface from entropy.services.system.executors import Base as SystemManagerExecutorServerRepositoryInterface from entropy.services.system.commands import Repository as SystemManagerRepositoryCommands from entropy.server.interfaces import Server as ServerInterface def run_srv(s): try: s.go() except (KeyboardInterrupt, SystemExit,): s.killall() srv = SystemManagerServerInterface( ServerInterface, do_ssl = do_ssl, stdout_logging = do_stdout_logging, external_cmd_classes = [SystemManagerRepositoryCommands], external_executor_cmd_classes = [(SystemManagerExecutorServerRepositoryInterface,[],{},)], entropy_interface_kwargs = {'community_repo': etpConst['community']['mode']} ) srv.port = do_port thread_names = ["system_socket"] task = entropyTools.parallelTask(run_srv, srv) task.setName(thread_names[0]) task.start() try: while task.isAlive(): time.sleep(1) except KeyboardInterrupt: raise SystemExit(1) raise SystemExit(0)