import logging
import yaml
-from osm_common import dbmongo, dbmemory, fslocal, msglocal, msgkafka, version as common_version
+from osm_common import dbmongo, dbmemory, fslocal, fsmongo, msglocal, msgkafka, version as common_version
from osm_common.dbbase import DbException
from osm_common.fsbase import FsException
from osm_common.msgbase import MsgException
# Add new versions here
}
- def __init__(self):
+ def __init__(self, token_cache):
self.db = None
self.fs = None
self.msg = None
self.logger = logging.getLogger("nbi.engine")
self.map_topic = {}
self.write_lock = None
+ self.token_cache = token_cache
def start(self, config):
"""
if config["storage"]["driver"] == "local":
self.fs = fslocal.FsLocal()
self.fs.fs_connect(config["storage"])
+ elif config["storage"]["driver"] == "mongo":
+ self.fs = fsmongo.FsMongo()
+ self.fs.fs_connect(config["storage"])
else:
raise EngineException("Invalid configuration param '{}' at '[storage]':'driver'".format(
config["storage"]["driver"]))
if config["authentication"]["backend"] == "keystone":
self.auth = AuthconnKeystone(config["authentication"], self.db, None)
else:
- self.auth = AuthconnInternal(config["authentication"], self.db, dict())
+ self.auth = AuthconnInternal(config["authentication"], self.db, self.token_cache)
if not self.operations:
if "resources_to_operations" in config["rbac"]:
resources_to_operations_file = config["rbac"]["resources_to_operations"]