X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fapi%2Ftango%2F__init__.py;h=0a1f6ae05d66cd49c189ef9ad22fc914e70bf1ca;hb=HEAD;hp=3fe6a16e522773bf9240329c292ef911f5f8f416;hpb=20e54456216efbcca714ae7464f4cf196999b662;p=osm%2Fvim-emu.git diff --git a/src/emuvim/api/tango/__init__.py b/src/emuvim/api/tango/__init__.py index 3fe6a16..0a1f6ae 100755 --- a/src/emuvim/api/tango/__init__.py +++ b/src/emuvim/api/tango/__init__.py @@ -31,7 +31,7 @@ # partner consortium (www.5gtango.eu). import logging import threading -import llcm +from emuvim.api.tango import llcm LOG = logging.getLogger("5gtango.llcm") @@ -45,7 +45,8 @@ class TangoLLCMEndpoint(object): """ def __init__(self, listenip, port, deploy_sap=False, docker_management=False, - auto_deploy=False, auto_delete=False, sap_vnfd_path=None): + auto_deploy=False, auto_delete=False, sap_vnfd_path=None, + placement_algorithm_obj=None, env_conf_folder=None): self.dcs = {} self.ip = listenip self.port = port @@ -54,7 +55,14 @@ class TangoLLCMEndpoint(object): llcm.AUTO_DEPLOY = auto_deploy llcm.AUTO_DELETE = auto_delete llcm.SAP_VNFD = sap_vnfd_path + if placement_algorithm_obj is None: + # Default placement is RR placement + placement_algorithm_obj = llcm.RoundRobinDcPlacement() + llcm.PLACEMENT_ALGORITHM_OBJ = placement_algorithm_obj + llcm.PER_INSTANCE_ENV_CONFIGURATION_FOLDER = env_conf_folder LOG.info("Created 5GTANGO LLCM API endpoint %s" % self) + LOG.info("Using placement algorithm: {}".format( + placement_algorithm_obj)) def __repr__(self): return "%s(%s:%d)" % (self.__class__.__name__, self.ip, self.port) @@ -72,3 +80,6 @@ class TangoLLCMEndpoint(object): def _api_server_thread(self): llcm.start_rest_api(self.ip, self.port, self.dcs) + + def stop(self): + llcm.stop_rest_api()