X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_lcm%2Fdata_utils%2Fnsr.py;h=9b0570c1364e2fd44b40e319363e56d608b0f35d;hb=9e9a923448e6673fc0396265732115b55f1df9da;hp=f62b0b40262fdf1b20e64cfa9b832c955675815d;hpb=922c41753ffbb4b526f2135a23c39f480c58e2cb;p=osm%2FLCM.git diff --git a/osm_lcm/data_utils/nsr.py b/osm_lcm/data_utils/nsr.py index f62b0b4..9b0570c 100644 --- a/osm_lcm/data_utils/nsr.py +++ b/osm_lcm/data_utils/nsr.py @@ -22,6 +22,32 @@ # contact: fbravo@whitestack.com ## +from osm_lcm.data_utils import list_utils +from osm_lcm.lcm_utils import get_iterable -def get_vlds(nsr): - return nsr.get("vld", ()) + +def get_deployed_kdu(nsr_deployed, kdu_name, member_vnf_index): + deployed_kdu = None + index = None + for index, deployed_kdu in enumerate(get_iterable(nsr_deployed, "K8s")): + if ( + kdu_name == deployed_kdu["kdu-name"] + and deployed_kdu["member-vnf-index"] == member_vnf_index + ): + break + return deployed_kdu, index + + +def get_nsd(nsr): + return nsr.get("nsd", {}) + + +def get_deployed_vca_list(nsr): + return nsr.get("_admin", ()).get("deployed", ()).get("VCA", []) + + +def get_deployed_vca(nsr, filter): + return list_utils.find_in_list( + get_deployed_vca_list(nsr), + lambda vca: all(vca[key] == value for key, value in filter.items()), + )