X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fserver%2Fsfa-start.py;h=5c3a2e4021cfa6219b1df413710f021f4052fd8c;hb=4a9e6751f9f396f463932133b9d62fc925a99ef6;hp=5b386c0209c2dfc247ed27167a4b7205bc4cb2a7;hpb=fd395e1944dcd49f10a4d5b27ce4983ad389fb96;p=sfa.git diff --git a/sfa/server/sfa-start.py b/sfa/server/sfa-start.py index 5b386c02..5c3a2e40 100755 --- a/sfa/server/sfa-start.py +++ b/sfa/server/sfa-start.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python3 # # PlanetLab SFA implementation # @@ -25,8 +25,6 @@ # TODO: Can all three servers use the same "registry" certificate? ## -# xxx todo not in the config yet -component_port = 12346 import os import os.path import traceback @@ -50,31 +48,6 @@ from sfa.server.aggregate import Aggregates from sfa.client.return_value import ReturnValue -def daemon(): - """ - Daemonize the current process. - after http://www.erlenstar.demon.co.uk/unix/faq_2.html - """ - if os.fork() != 0: - os._exit(0) - os.setsid() - if os.fork() != 0: - os._exit(0) - os.umask(0) - devnull = os.open(os.devnull, os.O_RDWR) - os.dup2(devnull, 0) - # xxx fixme - this is just to make sure that nothing gets stupidly lost - - # should use devnull - logdir = '/var/log/httpd' - # when installed in standalone we might not have httpd installed - if not os.path.isdir(logdir): - os.mkdir('/var/log/httpd') - crashlog = os.open('%s/sfa_access_log' % logdir, - os.O_RDWR | os.O_APPEND | os.O_CREAT, 0644) - os.dup2(crashlog, 1) - os.dup2(crashlog, 2) - - def install_peer_certs(server_key_file, server_cert_file): """ Attempt to install missing trusted gids and db records for @@ -87,7 +60,7 @@ def install_peer_certs(server_key_file, server_cert_file): api = SfaApi(key_file=server_key_file, cert_file=server_cert_file) registries = Registries() aggregates = Aggregates() - interfaces = dict(registries.items() + aggregates.items()) + interfaces = dict(list(registries.items()) + list(aggregates.items())) gids_current = api.auth.trusted_cert_list hrns_current = [gid.get_hrn() for gid in gids_current] hrns_expected = set([hrn for hrn in interfaces]) @@ -186,17 +159,11 @@ def main(): parser = OptionParser(usage="sfa-start.py [options]") parser.add_option("-r", "--registry", dest="registry", action="store_true", help="run registry server", default=False) - parser.add_option("-s", "--slicemgr", dest="sm", action="store_true", - help="run slice manager", default=False) parser.add_option("-a", "--aggregate", dest="am", action="store_true", help="run aggregate manager", default=False) - parser.add_option("-c", "--component", dest="cm", action="store_true", - help="run component server", default=False) parser.add_option("-t", "--trusted-certs", dest="trusted_certs", action="store_true", help="refresh trusted certs", default=False) - parser.add_option("-d", "--daemon", dest="daemon", action="store_true", - help="Run as daemon.", default=False) (options, args) = parser.parse_args() config = Config() @@ -212,8 +179,6 @@ def main(): # ensure interface cert is present in trusted roots dir trusted_roots = TrustedRoots(config.get_trustedroots_dir()) trusted_roots.add_gid(GID(filename=server_cert_file)) - if (options.daemon): - daemon() if options.trusted_certs: install_peer_certs(server_key_file, server_cert_file) @@ -231,19 +196,6 @@ def main(): server_key_file, server_cert_file) a.start() - # start slice manager - if (options.sm): - from sfa.server.slicemgr import SliceMgr - s = SliceMgr("", config.SFA_SM_PORT, server_key_file, server_cert_file) - s.start() - - if (options.cm): - from sfa.server.component import Component - c = Component("", config.component_port, - server_key_file, server_cert_file) -# c = Component("", config.SFA_COMPONENT_PORT, server_key_file, server_cert_file) - c.start() - if __name__ == "__main__": try: main()