def main(): """ The entrypoint for the zoe-master script. :return: int """ config.load_configuration() args = config.get_conf() if args.debug: logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT) else: logging.basicConfig(level=logging.INFO, format=LOG_FORMAT) logging.getLogger('kazoo').setLevel(logging.WARNING) logging.getLogger('requests').setLevel(logging.WARNING) logging.getLogger('urllib3').setLevel(logging.WARNING) logging.getLogger('docker').setLevel(logging.INFO) logging.getLogger("tornado").setLevel(logging.DEBUG) log.info("Initializing DB manager") config.singletons['sql_manager'] = SQLManager(args) log.info("Initializing workspace managers") fswk = ZoeFSWorkspace() config.singletons['workspace_managers'] = [fswk] if config.get_conf().influxdb_enable: metrics_th = InfluxDBMetricSender(config.get_conf()) metrics_th.start() config.singletons['metric'] = metrics_th else: metrics_th = BaseMetricSender('metrics-logger', config.get_conf()) config.singletons['metric'] = metrics_th # stats_th = StatsManager() # stats_th.start() # TODO Broken Docker API # config.singletons['stats_manager'] = stats_th log.info("Initializing scheduler") config.scheduler = ZoeScheduler() restart_resubmit_scheduler() log.info("Starting ZMQ API server...") config.singletons['api_server'] = APIManager() try: config.singletons['api_server'].loop() except KeyboardInterrupt: pass except Exception: log.exception('fatal error') finally: config.scheduler.quit() config.singletons['api_server'].quit()
def main(): conf = load_configuration() config.load_configuration(conf) args = config.get_conf() if args.debug: logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT) else: logging.basicConfig(level=logging.INFO, format=LOG_FORMAT) logging.getLogger('kazoo').setLevel(logging.WARNING) logging.getLogger('requests').setLevel(logging.WARNING) logging.getLogger('urllib3').setLevel(logging.WARNING) logging.getLogger('docker').setLevel(logging.INFO) logging.getLogger("tornado").setLevel(logging.DEBUG) state = FakeSQLManager() config.singletons['sql_manager'] = state zapp_description = json.load(args.jsonfile) print('Validating zapp description...') zoe_lib.applications.app_validate(zapp_description) exec_id = state.execution_new('test', 'fake_user', zapp_description) e = state.execution_list(only_one=True, id=exec_id) _digest_application_description(e) print('Zapp digested, starting containers...') execution_to_containers(e) for service in e.services: print("Service {}, docker ID: {}".format(service.name, service.docker_id)) print("Execution as been started, press CTRL-C to terminate it") try: while True: time.sleep(1) except KeyboardInterrupt: pass print('Terminating...') terminate_execution(e)
def main(): conf = load_configuration() config.load_configuration(conf) args = config.get_conf() if args.debug: logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT) else: logging.basicConfig(level=logging.INFO, format=LOG_FORMAT) logging.getLogger("kazoo").setLevel(logging.WARNING) logging.getLogger("requests").setLevel(logging.WARNING) logging.getLogger("urllib3").setLevel(logging.WARNING) logging.getLogger("docker").setLevel(logging.INFO) logging.getLogger("tornado").setLevel(logging.DEBUG) state = FakeSQLManager() config.singletons["sql_manager"] = state zapp_description = json.load(args.jsonfile) print("Validating zapp description...") zoe_lib.applications.app_validate(zapp_description) exec_id = state.execution_new("test", "fake_user", zapp_description) e = state.execution_list(only_one=True, id=exec_id) _digest_application_description(e) print("Zapp digested, starting containers...") execution_to_containers(e) for service in e.services: print("Service {}, docker ID: {}".format(service.name, service.docker_id)) print("Execution as been started, press CTRL-C to terminate it") try: while True: time.sleep(1) except KeyboardInterrupt: pass print("Terminating...") terminate_execution(e)
def configuration(request): load_configuration(test_conf=TestConf()) return get_conf()