From bc7d12e07043d79b723edd19bbb47e5a5095c851 Mon Sep 17 00:00:00 2001 From: kayal2001 Date: Thu, 28 Nov 2024 10:47:32 +0530 Subject: [PATCH] Feature 11047: Vim Flavor Name as Ns Config Template Change-Id: Iea89c560fdcf736cf14e104736feab48c81b2114 Signed-off-by: kayal2001 Signed-off-by: garciadeblas --- osm_nbi/descriptor_topics.py | 9 +++++++++ osm_nbi/instance_topics.py | 9 +++++++++ osm_nbi/validation.py | 1 + 3 files changed, 19 insertions(+) diff --git a/osm_nbi/descriptor_topics.py b/osm_nbi/descriptor_topics.py index 287dbda..36b1d65 100644 --- a/osm_nbi/descriptor_topics.py +++ b/osm_nbi/descriptor_topics.py @@ -2320,6 +2320,15 @@ class NsConfigTemplateTopic(DescriptorTopic): for key, value in edit_content_param.items(): param = key param_content = value + if param == "vnf": + for content in param_content: + for vdu in content.get("vdu"): + if vdu.get("vim-flavor-name") and vdu.get( + "vim-flavor-id" + ): + raise EngineException( + "Instantiation parameters vim-flavor-name and vim-flavor-id are mutually exclusive" + ) validate_input(param_content, self.instantiation_params[param]) return final_content except Exception as e: diff --git a/osm_nbi/instance_topics.py b/osm_nbi/instance_topics.py index 6308e56..c336229 100644 --- a/osm_nbi/instance_topics.py +++ b/osm_nbi/instance_topics.py @@ -374,6 +374,15 @@ class NsrTopic(BaseTopic): ns_config_template_db, "ns_config_template", self.db ) + elif ns_request.get("vnf"): + vnf_data = ns_request.get("vnf") + for vnf in vnf_data: + for vdu in vnf.get("vdu"): + if vdu.get("vim-flavor-name") and vdu.get("vim-flavor-id"): + raise EngineException( + "Instantiation parameters vim-flavor-name and vim-flavor-id are mutually exclusive" + ) + step = "checking nsdOperationalState" self._check_nsd_operational_state(nsd, ns_request) diff --git a/osm_nbi/validation.py b/osm_nbi/validation.py index e27cfb0..0ba0a5f 100644 --- a/osm_nbi/validation.py +++ b/osm_nbi/validation.py @@ -159,6 +159,7 @@ ns_instantiate_vdu = { "id": name_schema, "vim-flavor-id": name_schema, "instance_name": name_schema, + "vim-flavor-name": name_schema, "volume": { "type": "array", "minItems": 1, -- 2.25.1