return vnfd.get("kdu", ())
+def get_kdu(vnfd, kdu_name):
+ return list_utils.find_in_list(
+ get_kdu_list(vnfd), lambda kdu: kdu["name"] == kdu_name
+ )
+
+
+def get_kdu_services(kdu):
+ return kdu.get("service", [])
+
+
def get_ee_sorted_initial_config_primitive_list(
primitive_list, vca_deployed, ee_descriptor_id
):
)
-def get_kdu_profile(vnfd, kdu_profile_id):
+def get_kdu_resource_profile(vnfd, kdu_profile_id):
return list_utils.find_in_list(
vnfd.get("df", ())[0]["kdu-resource-profile"],
lambda kdu_profile: kdu_profile["id"] == kdu_profile_id,
)
+def get_relation_list(vnfd, entity_id):
+ return (get_configuration(vnfd, entity_id) or {}).get("relation", [])
+
+
def get_virtual_link_profiles(vnfd):
return vnfd.get("df")[0].get("virtual-link-profile", ())
get_configuration(vnfd, entity_id).get("execution-environment-list", []),
lambda ee: "juju" in ee,
)
+
+
+def find_software_version(vnfd: dict) -> str:
+ """Find the sotware version in the VNFD descriptors
+
+ Args:
+ vnfd (dict): Descriptor as a dictionary
+
+ Returns:
+ software-version (str)
+ """
+
+ default_sw_version = "1.0"
+
+ if vnfd.get("vnfd"):
+ vnfd = vnfd["vnfd"]
+
+ if vnfd.get("software-version"):
+ return vnfd["software-version"]
+
+ else:
+ return default_sw_version