summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKailun Qin <kailun.qin@intel.com>2018-04-02 20:06:44 +0800
committeryunlong ying <ying.yunlong@zte.com.cn>2018-04-03 01:29:09 +0000
commit119e5b77e891cbfa0c29907690a11772e2d87a51 (patch)
tree124fd8b06d45557a913a36578245168113acb9eb
parent1891386fa083aeaf20fa735578829fb040eae32e (diff)
Check VL type with all parent types.
Change-Id: I5e8c3922b548bff330245f3630148617e6622c07 Issue-ID: VFC-858 Signed-off-by: Kailun Qin <kailun.qin@intel.com>
-rw-r--r--catalog/pub/utils/toscaparser/basemodel.py10
-rw-r--r--catalog/pub/utils/toscaparser/nsdmodel.py6
-rw-r--r--catalog/pub/utils/toscaparser/vnfdmodel.py2
3 files changed, 8 insertions, 10 deletions
diff --git a/catalog/pub/utils/toscaparser/basemodel.py b/catalog/pub/utils/toscaparser/basemodel.py
index 9d1ffe7a..3f1f22ef 100644
--- a/catalog/pub/utils/toscaparser/basemodel.py
+++ b/catalog/pub/utils/toscaparser/basemodel.py
@@ -30,8 +30,8 @@ from catalog.pub.utils.toscaparser.dataentityext import DataEntityExt
logger = logging.getLogger(__name__)
# TOSCA template key names
-SECTIONS = (VDU_TYPE, CP_TYPE) = \
- ('tosca.nodes.nfv.Vdu.Compute', 'tosca.nodes.nfv.Cp')
+SECTIONS = (VDU_TYPE, VL_TYPE, CP_TYPE) = \
+ ('tosca.nodes.nfv.Vdu.Compute', 'tosca.nodes.nfv.VnfVirtualLink', 'tosca.nodes.nfv.Cp')
class BaseInfoModel(object):
@@ -254,10 +254,8 @@ class BaseInfoModel(object):
def isCp(self, node, node_types):
return self.isNodeTypeX(node, node_types, CP_TYPE)
- def isVl(self, node):
- isvl = node['nodeType'].upper().find('.VIRTUALLINK.') >= 0 or node['nodeType'].upper().find('.VL.') >= 0
- isvl = isvl or node['nodeType'].upper().endswith('.VIRTUALLINK') or node['nodeType'].upper().endswith('.VL')
- return isvl
+ def isVl(self, node, node_types):
+ return self.isNodeTypeX(node, node_types, VL_TYPE)
def isService(self, node):
return node['nodeType'].upper().find('.SERVICE.') >= 0 or node['nodeType'].upper().endswith('.SERVICE')
diff --git a/catalog/pub/utils/toscaparser/nsdmodel.py b/catalog/pub/utils/toscaparser/nsdmodel.py
index 37d1c117..2e679e4c 100644
--- a/catalog/pub/utils/toscaparser/nsdmodel.py
+++ b/catalog/pub/utils/toscaparser/nsdmodel.py
@@ -33,7 +33,7 @@ class EtsiNsdInfoModel(BaseInfoModel):
node_types = tosca.topology_template.custom_defs
self.vnfs = self._get_all_vnf(nodeTemplates)
self.pnfs = self._get_all_pnf(nodeTemplates)
- self.vls = self.get_all_vl(nodeTemplates)
+ self.vls = self.get_all_vl(nodeTemplates, node_types)
self.cps = self.get_all_cp(nodeTemplates, node_types)
self.routers = self.get_all_router(nodeTemplates)
self.fps = self._get_all_fp(nodeTemplates)
@@ -136,10 +136,10 @@ class EtsiNsdInfoModel(BaseInfoModel):
cps.append(tmpnode)
return cps
- def get_all_vl(self, nodeTemplates):
+ def get_all_vl(self, nodeTemplates, node_types):
vls = []
for node in nodeTemplates:
- if self.isVl(node):
+ if self.isVl(node, node_types):
vl = {}
vl['vl_id'] = node['name']
vl['description'] = node['description']
diff --git a/catalog/pub/utils/toscaparser/vnfdmodel.py b/catalog/pub/utils/toscaparser/vnfdmodel.py
index f61dfe19..fbed8b98 100644
--- a/catalog/pub/utils/toscaparser/vnfdmodel.py
+++ b/catalog/pub/utils/toscaparser/vnfdmodel.py
@@ -37,7 +37,7 @@ class EtsiVnfdInfoModel(EtsiNsdInfoModel):
self.local_storages = self._get_all_local_storage(nodeTemplates)
self.volume_storages = self._get_all_volume_storage(nodeTemplates)
self.vdus = self._get_all_vdu(nodeTemplates, node_types)
- self.vls = self.get_all_vl(nodeTemplates)
+ self.vls = self.get_all_vl(nodeTemplates, node_types)
self.cps = self.get_all_cp(nodeTemplates, node_types)
self.plugins = self.get_all_plugin(nodeTemplates)
self.routers = self.get_all_router(nodeTemplates)