diff options
Diffstat (limited to 'catalog/packages/biz/ns_descriptor.py')
-rw-r--r-- | catalog/packages/biz/ns_descriptor.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/catalog/packages/biz/ns_descriptor.py b/catalog/packages/biz/ns_descriptor.py index bdd56bd1..13e53654 100644 --- a/catalog/packages/biz/ns_descriptor.py +++ b/catalog/packages/biz/ns_descriptor.py @@ -150,6 +150,16 @@ class NsDescriptor(object): logger.error("[%s] is not distributed.", vnfd_name) raise CatalogException("VNF package(%s) is not distributed." % vnfd_id) + for pnf in nsd["pnfs"]: + pnfd_id = pnf["properties"].get("descriptor_id", "undefined") + if pnfd_id == "undefined": + pnfd_id = pnf["properties"].get("id", "undefined") + pkg = PnfPackageModel.objects.filter(pnfdId=pnfd_id) + if not pkg: + pnfd_name = pnf.get("vnf_id", "undefined") + logger.error("[%s] is not distributed.", pnfd_name) + raise CatalogException("VNF package(%s) is not distributed." % pnfd_name) + ns_pkgs.update( nsdId=nsd_id, nsdName=nsd_name, |