X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=openmanod.py;h=bb32339c50a571a18541dd486c021a0149ef8891;hb=89cb0d152c7a052ec868a666a9789056596fbdc7;hp=5ec3650ba97d05f15cb630f57fff13770718746d;hpb=fb1dce6f90f40705665dc615888a67e82aad798b;p=osm%2FRO.git diff --git a/openmanod.py b/openmanod.py index 5ec3650b..bb32339c 100755 --- a/openmanod.py +++ b/openmanod.py @@ -37,19 +37,17 @@ __version__="0.5.8-r518" version_date="Jan 2017" database_version="0.19" #expected database schema version -import httpserver import time import sys import getopt import yaml -import nfvo_db from jsonschema import validate as js_v, exceptions as js_e -from openmano_schemas import config_schema -from db_base import db_base_Exception -import nfvo import logging import logging.handlers as log_handlers import socket +from osm_ro import httpserver, nfvo, nfvo_db +from osm_ro.openmano_schemas import config_schema +from osm_ro.db_base import db_base_Exception global global_config global logger @@ -145,7 +143,8 @@ if __name__=="__main__": logger.setLevel(logging.DEBUG) socket_handler = None file_handler = None - # Read parameters and configuration file + # Read parameters and configuration file + httpthread = None try: #load parameters and configuration opts, args = getopt.getopt(sys.argv[1:], "hvc:V:p:P:", ["config=", "help", "version", "port=", "vnf-repository=", "adminport=", "log-socket-host=", "log-socket-port=", "log-file="]) @@ -274,6 +273,7 @@ if __name__=="__main__": exit(-1) nfvo.global_config=global_config + nfvo.start_service(mydb) httpthread = httpserver.httpserver(mydb, False, global_config['http_host'], global_config['http_port']) @@ -292,12 +292,10 @@ if __name__=="__main__": #TODO: Interactive console must be implemented here instead of join or sleep #httpthread.join() - #if 'http_admin_port' in global_config: + #if 'http_admin_port' in global_config: # httpthreadadmin.join() while True: time.sleep(86400) - for thread in global_config["console_thread"]: - thread.terminate = True except KeyboardInterrupt as e: logger.info(str(e)) @@ -313,4 +311,9 @@ if __name__=="__main__": except db_base_Exception as e: logger.critical(str(e)) exit(-1) + nfvo.stop_service() + if httpthread: + httpthread.join(1) + for thread in global_config["console_thread"]: + thread.terminate = True