From: maopengzhang Date: Fri, 9 Nov 2018 12:33:31 +0000 (+0800) Subject: fix vnfmodel error X-Git-Tag: 1.2.1~3^2~2 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F92%2F72292%2F1;p=vfc%2Fnfvo%2Fcatalog.git fix vnfmodel error support multi exposed ports in vnfmodel, etc Change-Id: I2407a557ebc61bffd77ea3bdfccdcbff5884777b Issue-ID: VFC-1158 Signed-off-by: maopengzhang --- diff --git a/catalog/pub/utils/toscaparser/vnfdmodel.py b/catalog/pub/utils/toscaparser/vnfdmodel.py index ce0206fe..8c1b97ed 100644 --- a/catalog/pub/utils/toscaparser/vnfdmodel.py +++ b/catalog/pub/utils/toscaparser/vnfdmodel.py @@ -199,11 +199,19 @@ class EtsiVnfdInfoModel(BaseInfoModel): def _get_external_cps(self, vnf_requirements): external_cps = [] if vnf_requirements: - for key, value in vnf_requirements.items(): - if isinstance(value, list) and len(value) > 0: - external_cps.append({"key_name": key, "cpd_id": value[0]}) - else: - external_cps.append({"key_name": key, "cpd_id": value}) + if isinstance(vnf_requirements, dict): + for key, value in vnf_requirements.items(): + if isinstance(value, list) and len(value) > 0: + external_cps.append({"key_name": key, "cpd_id": value[0]}) + else: + external_cps.append({"key_name": key, "cpd_id": value}) + elif isinstance(vnf_requirements, list): + for vnf_requirement in vnf_requirements: + for key, value in vnf_requirement.items(): + if isinstance(value, list) and len(value) > 0: + external_cps.append({"key_name": key, "cpd_id": value[0]}) + else: + external_cps.append({"key_name": key, "cpd_id": value}) return external_cps def _get_forward_cps(self, vnf_capabilities):