From d02cb50e7c2ce79d6afeab60725933ab86ccbab4 Mon Sep 17 00:00:00 2001 From: dyh Date: Thu, 16 Apr 2020 14:58:06 +0800 Subject: [PATCH] fix bug: Failed to fetch NS package from SDC when having VL resource Change-Id: I13bbbd1ce1a97348c99ad86b0d78dcefbd6bc7f6 Issue-ID: MODELING-354 Signed-off-by: dyh --- catalog/packages/biz/sdc_ns_package.py | 18 +++++++++++------- catalog/pub/utils/restcall.py | 2 +- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/catalog/packages/biz/sdc_ns_package.py b/catalog/packages/biz/sdc_ns_package.py index 553abb0..9183ce1 100644 --- a/catalog/packages/biz/sdc_ns_package.py +++ b/catalog/packages/biz/sdc_ns_package.py @@ -17,14 +17,14 @@ import os import sys import traceback +from catalog.packages.biz.ns_descriptor import NsDescriptor from catalog.pub.config.config import CATALOG_ROOT_PATH, CATALOG_URL_PATH from catalog.pub.config.config import REG_TO_MSB_REG_PARAM -from catalog.pub.database.models import NSPackageModel, VnfPackageModel, PnfPackageModel +from catalog.pub.database.models import NSPackageModel, VnfPackageModel from catalog.pub.exceptions import CatalogException from catalog.pub.msapi import sdc -from catalog.pub.utils import toscaparser -from catalog.packages.biz.ns_descriptor import NsDescriptor from catalog.pub.utils import fileutil +from catalog.pub.utils import toscaparser logger = logging.getLogger(__name__) @@ -124,10 +124,14 @@ class NsPackage(object): resources = ns.get('resources', None) if resources: for resource in resources: - if not VnfPackageModel.objects.filter(vnfPackageId=resource['resourceUUID']) and \ - not PnfPackageModel.objects.filter(pnfPackageId=resource['resourceUUID']): - logger.error("Resource [%s] is not distributed.", resource['resourceUUID']) - raise CatalogException("Resource (%s) is not distributed." % resource['resourceUUID']) + if resource['resoucreType'].upper == 'VF' and not VnfPackageModel.objects.filter( + vnfPackageId=resource['resourceUUID']): + logger.error("VF [%s] is not distributed.", resource['resourceUUID']) + raise CatalogException("VF (%s) is not distributed." % resource['resourceUUID']) + # if resource['resoucreType'] == 'PNF' and not PnfPackageModel.objects.filter( + # pnfPackageId=resource['resourceUUID']): + # logger.error("PNF [%s] is not distributed.", resource['resourceUUID']) + # raise CatalogException("PNF (%s) is not distributed." % resource['resourceUUID']) # download csar package local_path = os.path.join(CATALOG_ROOT_PATH, csar_id) diff --git a/catalog/pub/utils/restcall.py b/catalog/pub/utils/restcall.py index 1499f8f..4348c49 100644 --- a/catalog/pub/utils/restcall.py +++ b/catalog/pub/utils/restcall.py @@ -68,7 +68,7 @@ def call_req(base_url, user, passwd, auth_type, resource, method, content='', ad raise ex except urllib.error.URLError as err: ret = [2, str(err), resp_status] - except Exception as ex: + except Exception: logger.error(traceback.format_exc()) logger.error("[%s]ret=%s" % (callid, str(sys.exc_info()))) res_info = str(sys.exc_info()) -- 2.16.6