From: maopengzhang Date: Sat, 27 Oct 2018 06:23:29 +0000 (+0800) Subject: support pnf properties and metadata X-Git-Tag: 1.2.1~8^2~6 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=3fe13e71ea3f66258e2a5d17871c1afbca27b28f;p=vfc%2Fnfvo%2Fcatalog.git support pnf properties and metadata support pnf properties and metadata Change-Id: I9095b9aea87bb5e7e17278879ad74d69eafcd805 Issue-ID: VFC-1158 Signed-off-by: maopengzhang --- diff --git a/catalog/pub/utils/toscaparser/pnfmodel.py b/catalog/pub/utils/toscaparser/pnfmodel.py index 1acf6d4c..e092e927 100644 --- a/catalog/pub/utils/toscaparser/pnfmodel.py +++ b/catalog/pub/utils/toscaparser/pnfmodel.py @@ -30,10 +30,11 @@ class PnfdInfoModel(BaseInfoModel): tosca.nodetemplates) self.basepath = self.get_base_path(tosca) self.pnf = {} + self.get_substitution_mappings(tosca) self.get_all_cp(nodeTemplates) def get_substitution_mappings(self, tosca): - pnf_substitution_mappings = tosca.tpl['topology_template']['substitution_mappings'] + pnf_substitution_mappings = tosca.tpl['topology_template'].get('substitution_mappings', None) if pnf_substitution_mappings: self.pnf['type'] = pnf_substitution_mappings['node_type'] self.pnf['properties'] = pnf_substitution_mappings['properties'] diff --git a/catalog/pub/utils/toscaparser/testdata/pnf/ran-du.csar b/catalog/pub/utils/toscaparser/testdata/pnf/ran-du.csar index 73210685..45168a96 100644 Binary files a/catalog/pub/utils/toscaparser/testdata/pnf/ran-du.csar and b/catalog/pub/utils/toscaparser/testdata/pnf/ran-du.csar differ diff --git a/catalog/pub/utils/toscaparser/tests.py b/catalog/pub/utils/toscaparser/tests.py index 004911d9..8c6f57e9 100644 --- a/catalog/pub/utils/toscaparser/tests.py +++ b/catalog/pub/utils/toscaparser/tests.py @@ -58,8 +58,11 @@ class TestToscaparser(TestCase): self.remove_temp_dir() csar_path = os.path.dirname(os.path.abspath(__file__)) + "/testdata/pnf/ran-du.csar" pnfd_json = parse_pnfd(csar_path) - metadata = json.loads(pnfd_json).get("metadata") + pnfd_dict = json.loads(pnfd_json) + metadata = pnfd_dict.get("metadata") self.assertEqual("RAN_DU", metadata.get("template_name", "")) + descriptor_id = pnfd_dict["pnf"]["properties"]["descriptor_id"] + self.assertEqual(1, descriptor_id) def test_nsd_parse(self): self.remove_temp_dir()