X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_lcm%2Fns.py;h=a83495afdd382f9727fd34d8771387286da50d90;hb=ba89cbb37502265011935fddbc04cb4304b14ca2;hp=5b06c181b8679fccb0204f7d6b3112d829976376;hpb=e5d05979d8a2b6c3f1fca316053a997790f3d536;p=osm%2FLCM.git diff --git a/osm_lcm/ns.py b/osm_lcm/ns.py index 5b06c18..a83495a 100644 --- a/osm_lcm/ns.py +++ b/osm_lcm/ns.py @@ -148,7 +148,9 @@ class NsLcm(LcmBase): fs=self.fs, log=self.logger, db=self.db, + loop=self.loop, on_update_db=None, + vca_config=self.vca_config, ) self.k8scluster_map = { @@ -3521,8 +3523,7 @@ class NsLcm(LcmBase): self._write_op_status(nslcmop_id, stage) return error_detail_list - @staticmethod - def _map_primitive_params(primitive_desc, params, instantiation_params): + def _map_primitive_params(self, primitive_desc, params, instantiation_params): """ Generates the params to be provided to charm before executing primitive. If user does not provide a parameter, The default-value is used. If it is between < > it look for a value at instantiation_params @@ -3557,11 +3558,20 @@ class NsLcm(LcmBase): width=256) elif isinstance(calculated_params[param_name], str) and calculated_params[param_name].startswith("!!yaml "): calculated_params[param_name] = calculated_params[param_name][7:] + if parameter.get("data-type") == "INTEGER": + try: + calculated_params[param_name] = int(calculated_params[param_name]) + except ValueError: # error converting string to int + raise LcmException( + "Parameter {} of primitive {} must be integer".format(param_name, primitive_desc["name"])) + elif parameter.get("data-type") == "BOOLEAN": + calculated_params[param_name] = not ((str(calculated_params[param_name])).lower() == 'false') # add always ns_config_info if primitive name is config if primitive_desc["name"] == "config": if "ns_config_info" in instantiation_params: calculated_params["ns_config_info"] = instantiation_params["ns_config_info"] + calculated_params["VCA"] = self.vca_config return calculated_params def _look_for_deployed_vca(self, deployed_vca, member_vnf_index, vdu_id, vdu_count_index, kdu_name=None,