while nb_tries < 360:
db_vnfr = self.db.get_one("vnfrs", {"_id": vnfr_id})
- kdur = next((x for x in get_iterable(db_vnfr, "kdur") if x.get("name") == kdu_name), None)
+ kdur = next((x for x in get_iterable(db_vnfr, "kdur") if x.get("kdu-name") == kdu_name), None)
if not kdur:
raise LcmException("Not found vnfr_id={}, kdu_name={}".format(vnfr_id, kdu_name))
if kdur.get("status"):
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
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,