X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_lcm%2Fdata_utils%2Fvnfd.py;h=1b45b5397ca5f06708d1065dbe1d89616307e2e2;hb=refs%2Fchanges%2F61%2F10661%2F2;hp=b12f7d038187a004eb66e4684987379cee71d404;hpb=c80bfdba5bdff39d67de52bfba477aa5d0599908;p=osm%2FLCM.git diff --git a/osm_lcm/data_utils/vnfd.py b/osm_lcm/data_utils/vnfd.py index b12f7d0..1b45b53 100644 --- a/osm_lcm/data_utils/vnfd.py +++ b/osm_lcm/data_utils/vnfd.py @@ -88,33 +88,17 @@ def get_vdu_profile(vnfd, vdu_profile_id): lambda vdu_profile: vdu_profile["id"] == vdu_profile_id) -def get_kdu_profile(vnfd, kdu_profile_id): - return list_utils.find_in_list( - vnfd.get("df", ())[0]["kdu-profile"], - lambda kdu_profile: kdu_profile["name"] == kdu_profile_id) - - -def get_vnf_configuration(vnfd): - if "vnf-configuration-id" not in vnfd.get("df")[0]: +def get_configuration(vnfd, entity_id): + lcm_ops_config = vnfd.get("df")[0].get("lcm-operations-configuration") + if not lcm_ops_config: return None - vnf_config_id = vnfd.get("df")[0]["vnf-configuration-id"] - return list_utils.find_in_list( - vnfd.get("vnf-configuration", {}), - lambda vnf_config: vnf_config["id"] == vnf_config_id) - - -def get_vdu_configuration(vnfd, vdu_id): - vdu_profile = get_vdu_profile(vnfd, vdu_id) - return list_utils.find_in_list( - vnfd.get("vdu-configuration", ()), - lambda vdu_configuration: vdu_configuration["id"] == vdu_profile["vdu-configuration-id"]) - - -def get_kdu_configuration(vnfd, kdu_id): - kdu_profile = get_kdu_profile(vnfd, kdu_id) + ops_vnf = lcm_ops_config.get("operate-vnf-op-config") + if not ops_vnf: + return None + day12ops = ops_vnf.get("day1-2", []) return list_utils.find_in_list( - vnfd.get("kdu-configuration", ()), - lambda kdu_configuration: kdu_configuration["id"] == kdu_profile["kdu-configuration-id"]) + day12ops, + lambda configuration: configuration["id"] == entity_id) def get_virtual_link_profiles(vnfd): @@ -154,4 +138,14 @@ def get_number_of_instances(vnfd, vdu_id): () ), lambda a_vdu: a_vdu["vdu-id"] == vdu_id - )["number-of-instances"] + ).get("number-of-instances", 1) + + +def get_juju_ee_ref(vnfd, entity_id): + return list_utils.find_in_list( + get_configuration(vnfd, entity_id).get( + "execution-environment-list", + [] + ), + lambda ee: "juju" in ee + )