summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lcm/pub/utils/toscaparser/vnfdmodel.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/lcm/pub/utils/toscaparser/vnfdmodel.py b/lcm/pub/utils/toscaparser/vnfdmodel.py
index a9b61b86..50dc7cff 100644
--- a/lcm/pub/utils/toscaparser/vnfdmodel.py
+++ b/lcm/pub/utils/toscaparser/vnfdmodel.py
@@ -20,6 +20,7 @@ class EtsiVnfdInfoModel(EtsiNsdInfoModel):
self.vcloud = self._get_all_vcloud(nodeTemplates)
self.vcenter = self._get_all_vcenter(nodeTemplates)
self.image_files = self._get_all_image_file(nodeTemplates)
+ self.local_storages = self._get_all_local_storage(nodeTemplates)
def _get_all_services(self, nodeTemplates):
@@ -96,4 +97,21 @@ class EtsiVnfdInfoModel(EtsiNsdInfoModel):
return rets
def _isImageFile(self, node):
- return node['nodeType'].upper().find('.IMAGEFILE.') >= 0 or node['nodeType'].upper().endswith('.IMAGEFILE') \ No newline at end of file
+ return node['nodeType'].upper().find('.IMAGEFILE.') >= 0 or node['nodeType'].upper().endswith('.IMAGEFILE')
+
+ def _get_all_local_storage(self, nodeTemplates):
+ rets = []
+ for node in nodeTemplates:
+ if self._isLocalStorage(node):
+ ret = {}
+ ret['local_storage_id'] = node['name']
+ if 'description' in node:
+ ret['description'] = node['description']
+ ret['properties'] = node['properties']
+
+ rets.append(ret)
+ return rets
+
+ def _isLocalStorage(self, node):
+ return node['nodeType'].upper().find('.LOCALSTORAGE.') >= 0 or node['nodeType'].upper().endswith(
+ '.LOCALSTORAGE')