X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_lcm%2Fns.py;h=1c18ec751aeb8ec738c77e2c6dddd1e1f4a5a95f;hb=refs%2Fchanges%2F85%2F11085%2F6;hp=ddd827e0ca11783adff1ba0839bc99867cfaae88;hpb=5f75f10f2308aa6a8cf36cfdeeb20dc95316c5ce;p=osm%2FLCM.git diff --git a/osm_lcm/ns.py b/osm_lcm/ns.py index ddd827e..1c18ec7 100644 --- a/osm_lcm/ns.py +++ b/osm_lcm/ns.py @@ -1603,17 +1603,22 @@ class NsLcm(LcmBase): namespace = "{nsi}.{ns}".format(nsi=nsi_id if nsi_id else "", ns=nsr_id) + if vca_type == "native_charm": + index_number = 0 + else: + index_number = vdu_index or 0 + if vnfr_id: element_type = "VNF" element_under_configuration = vnfr_id - namespace += ".{}-{}".format(vnfr_id, vdu_index or 0) + namespace += ".{}-{}".format(vnfr_id, index_number) if vdu_id: - namespace += ".{}-{}".format(vdu_id, vdu_index or 0) + namespace += ".{}-{}".format(vdu_id, index_number) element_type = "VDU" - element_under_configuration = "{}-{}".format(vdu_id, vdu_index or 0) + element_under_configuration = "{}-{}".format(vdu_id, index_number) osm_config["osm"]["vdu_id"] = vdu_id elif kdu_name: - namespace += ".{}.{}".format(kdu_name, vdu_index or 0) + namespace += ".{}".format(kdu_name) element_type = "KDU" element_under_configuration = kdu_name osm_config["osm"]["kdu_name"] = kdu_name @@ -1806,6 +1811,7 @@ class NsLcm(LcmBase): config=config, num_units=num_units, vca_id=vca_id, + vca_type=vca_type, ) # write in db flag of configuration_sw already installed @@ -1922,6 +1928,7 @@ class NsLcm(LcmBase): params_dict=primitive_params_, db_dict=db_dict, vca_id=vca_id, + vca_type=vca_type, ) # Once some primitive has been exec, check and write at db if it needs to exec terminated primitives if check_if_terminated_needed: @@ -2390,9 +2397,7 @@ class NsLcm(LcmBase): deploy_params_vdu["OSM"] = get_osm_params( db_vnfr, vdu_id, vdu_count_index=0 ) - vdud_count = get_vdu_profile(vnfd, vdu_id).get( - "max-number-of-instances", 1 - ) + vdud_count = get_number_of_instances(vnfd, vdu_id) self.logger.debug("VDUD > {}".format(vdud)) self.logger.debug( @@ -2848,13 +2853,16 @@ class NsLcm(LcmBase): "path": nsr_db_path, } - kdu_instance = self.k8scluster_map[ - k8sclustertype - ].generate_kdu_instance_name( - db_dict=db_dict_install, - kdu_model=k8s_instance_info["kdu-model"], - kdu_name=k8s_instance_info["kdu-name"], - ) + if k8s_instance_info.get("kdu-deployment-name"): + kdu_instance = k8s_instance_info.get("kdu-deployment-name") + else: + kdu_instance = self.k8scluster_map[ + k8sclustertype + ].generate_kdu_instance_name( + db_dict=db_dict_install, + kdu_model=k8s_instance_info["kdu-model"], + kdu_name=k8s_instance_info["kdu-name"], + ) self.update_db_2( "nsrs", nsr_id, {nsr_db_path + ".kdu-instance": kdu_instance} ) @@ -3093,6 +3101,7 @@ class NsLcm(LcmBase): if kdud["name"] == kdur["kdu-name"] ) namespace = kdur.get("k8s-namespace") + kdu_deployment_name = kdur.get("kdu-deployment-name") if kdur.get("helm-chart"): kdumodel = kdur["helm-chart"] # Default version: helm3, if helm-version is v2 assign v2 @@ -3205,6 +3214,7 @@ class NsLcm(LcmBase): "kdu-name": kdur["kdu-name"], "kdu-model": kdumodel, "namespace": namespace, + "kdu-deployment-name": kdu_deployment_name, } db_path = "_admin.deployed.K8s.{}".format(index) db_nsr_update[db_path] = k8s_instance_info @@ -3282,6 +3292,8 @@ class NsLcm(LcmBase): ) if "execution-environment-list" in descriptor_config: ee_list = descriptor_config.get("execution-environment-list", []) + elif "juju" in descriptor_config: + ee_list = [descriptor_config] # ns charms else: # other types as script are not supported ee_list = [] @@ -3740,6 +3752,7 @@ class NsLcm(LcmBase): await self.vca_map[vca_type].delete_execution_environment( vca_deployed["ee_id"], scaling_in=scaling_in, + vca_type=vca_type, vca_id=vca_id, ) @@ -4035,8 +4048,13 @@ class NsLcm(LcmBase): for vca_index, vca in enumerate(get_iterable(nsr_deployed, "VCA")): config_descriptor = None - - vca_id = self.get_vca_id(db_vnfrs_dict[vca["member-vnf-index"]], db_nsr) + vca_member_vnf_index = vca.get("member-vnf-index") + vca_id = self.get_vca_id( + db_vnfrs_dict.get(vca_member_vnf_index) + if vca_member_vnf_index + else None, + db_nsr, + ) if not vca or not vca.get("ee_id"): continue if not vca.get("member-vnf-index"): @@ -4508,6 +4526,7 @@ class NsLcm(LcmBase): total_timeout=self.timeout_primitive, db_dict=db_dict, vca_id=vca_id, + vca_type=vca_type, ), timeout=timeout or self.timeout_primitive, ) @@ -5374,7 +5393,6 @@ class NsLcm(LcmBase): # Pre-scale retry check: Check if this sub-operation has been executed before op_index = self._check_or_add_scale_suboperation( db_nslcmop, - nslcmop_id, vnf_index, vnf_config_primitive, primitive_params, @@ -5783,7 +5801,6 @@ class NsLcm(LcmBase): # Post-scale retry check: Check if this sub-operation has been executed before op_index = self._check_or_add_scale_suboperation( db_nslcmop, - nslcmop_id, vnf_index, vnf_config_primitive, primitive_params,