- add default session ttl git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2715 cd1c1023-2f26-0410-ae45-c471fc1f0318
67 lines
2.0 KiB
Python
67 lines
2.0 KiB
Python
#!/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 entropyConstants import *
|
|
import entropyTools, exceptionTools
|
|
from entropy import SystemManagerServerInterface, SystemManagerExecutorServerRepositoryInterface, SystemManagerRepositoryCommands, ServerInterface
|
|
etpConst['community']['mode'] = True
|
|
etpConst['socket_service']['session_ttl'] = 300
|
|
|
|
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()
|
|
|
|
while 1:
|
|
try:
|
|
time.sleep(1)
|
|
found = False
|
|
threads = entropyTools.threading.enumerate()
|
|
for thread in threads:
|
|
if thread.getName() in thread_names:
|
|
found = True
|
|
break
|
|
if not found:
|
|
break
|
|
except (KeyboardInterrupt, SystemExit,):
|
|
threads = entropyTools.threading.enumerate()
|
|
for thread in threads:
|
|
if thread.getName() in thread_names:
|
|
thread.args[0].killall()
|
|
raise SystemExit
|