X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FNBI.git;a=blobdiff_plain;f=osm_nbi%2Fnbi.py;h=921b07cdc9d9adbd68dfd99aa6ed7f68c8cef613;hp=b59a9e342e25ee0d7a1b7463d6ad333bebe0b72e;hb=cede4eb5c53b8e8ec9189b9770cdad9e07041fd2;hpb=45563f07e4fb691cf6445e5e95e354872ccf31d0 diff --git a/osm_nbi/nbi.py b/osm_nbi/nbi.py index b59a9e3..921b07c 100644 --- a/osm_nbi/nbi.py +++ b/osm_nbi/nbi.py @@ -11,7 +11,7 @@ import logging.handlers import getopt import sys -from auth import Authenticator +from auth import Authenticator, AuthException from engine import Engine, EngineException from osm_common.dbbase import DbException from osm_common.fsbase import FsException @@ -26,6 +26,7 @@ __author__ = "Alfonso Tierno " __version__ = "0.1.3" version_date = "Apr 2018" database_version = '1.0' +auth_database_version = '1.0' """ North Bound Interface (O: OSM specific; 5,X: SOL005 not implemented yet; O5: SOL005 implemented) @@ -764,12 +765,13 @@ def _start_service(): update_dict['server.socket_host'] = v elif k1 in ("server", "test", "auth", "log"): update_dict[k1 + '.' + k2] = v - elif k1 in ("message", "database", "storage"): + elif k1 in ("message", "database", "storage", "authenticator"): # k2 = k2.replace('_', '.') - if k2 == "port": + if k2 in ("port", "db_port"): engine_config[k1][k2] = int(v) else: engine_config[k1][k2] = v + except ValueError as e: cherrypy.log.error("Ignoring environ '{}': " + str(e)) except Exception as e: @@ -821,9 +823,11 @@ def _start_service(): logger_module.setLevel(engine_config[k1]["loglevel"]) # TODO add more entries, e.g.: storage cherrypy.tree.apps['/osm'].root.engine.start(engine_config) + cherrypy.tree.apps['/osm'].root.authenticator.start(engine_config) try: cherrypy.tree.apps['/osm'].root.engine.init_db(target_version=database_version) - except EngineException: + cherrypy.tree.apps['/osm'].root.authenticator.init_db(target_version=auth_database_version) + except (EngineException, AuthException): pass # getenv('OSMOPENMANO_TENANT', None)