From c2952a2b77e1a9398d0d85e5da23e283c8adfe5b Mon Sep 17 00:00:00 2001 From: fujinhua Date: Wed, 24 Oct 2018 10:29:47 +0800 Subject: [PATCH] Fix get logic of nsd pkg parser Change-Id: I5e4ca65c3a36373d367f49dde62f640ce5d71f1e Issue-ID: VFC-1163 Signed-off-by: fujinhua --- catalog/packages/biz/ns_descriptor.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/catalog/packages/biz/ns_descriptor.py b/catalog/packages/biz/ns_descriptor.py index 5741eaca..9bd00692 100644 --- a/catalog/packages/biz/ns_descriptor.py +++ b/catalog/packages/biz/ns_descriptor.py @@ -128,6 +128,7 @@ class NsDescriptor(object): ns_pkgs.update(onboardingState=PKG_STATUS.PROCESSING) nsd_json = toscaparser.parse_nsd(local_file_name, isETSI) + logger.debug("%s", nsd_json) nsd = json.JSONDecoder().decode(nsd_json) nsd_id = nsd[METADATA].get(NS_UUID, "undefined") @@ -137,7 +138,7 @@ class NsDescriptor(object): raise CatalogException("NSD(%s) already exists." % nsd_id) for vnf in nsd["vnfs"]: - vnfd_id = vnf["properties"]["id"] + vnfd_id = vnf["properties"].get("id", "undefined") pkg = VnfPackageModel.objects.filter(vnfdId=vnfd_id) if not pkg: vnfd_name = vnf.get("vnf_id", "undefined") @@ -145,7 +146,7 @@ class NsDescriptor(object): raise CatalogException("VNF package(%s) is not distributed." % vnfd_id) ns_pkgs.update( - nsdId=nsd[METADATA].get(NS_UUID, "undefined"), + nsdId=nsd_id, nsdName=nsd[METADATA].get(NS_NAME, "undefined"), nsdDesginer=nsd[METADATA].get(NS_DESIGNER, "undefined"), nsdDescription=nsd[METADATA].get(NS_DESCRIPTION, ""), -- 2.16.6