X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=common%2Fpython%2Frift%2Fmano%2Ftosca_translator%2Frwmano%2Ftosca%2Ftosca_network_network.py;h=88a8a31b5a3de43b15d13e05641861aa195aa2e1;hb=c2fe40c38153248d1a9f436241c65d5f43e5a900;hp=a2dd92bafbcf2fcd82fe316a6bf0ecb3b006980b;hpb=bc183dcd09255cbe61afe64f8543824f2270634c;p=osm%2FSO.git diff --git a/common/python/rift/mano/tosca_translator/rwmano/tosca/tosca_network_network.py b/common/python/rift/mano/tosca_translator/rwmano/tosca/tosca_network_network.py index a2dd92ba..88a8a31b 100644 --- a/common/python/rift/mano/tosca_translator/rwmano/tosca/tosca_network_network.py +++ b/common/python/rift/mano/tosca_translator/rwmano/tosca/tosca_network_network.py @@ -49,6 +49,7 @@ class ToscaNetwork(ManoResource): vld_prop['name'] = self.name vld_prop['short-name'] = self.name vld_prop['type'] = self.get_type() + vld_prop['ip_profile_ref'] = "{0}_{1}".format(self.nodetemplate.name, "ip") if 'description' in specs: vld_prop['description'] = specs['description'] if 'vendor' in specs: @@ -63,13 +64,13 @@ class ToscaNetwork(ManoResource): for mapping in substitution_mapping_list: if req_key in mapping: # link the VLD to the connection point - node = self.get_node_with_name(mapping[req_key][0], nodes) + node_vld = self.get_node_with_name(mapping[req_key][0], nodes) if node: #print() prop = {} - prop['member-vnf-index-ref'] = index_count - prop['vnfd-connection-point-ref'] = node.cp_name - prop['vnfd-id-ref'] = node.vnf._id + prop['member-vnf-index-ref'] = node.get_member_vnf_index() + prop['vnfd-connection-point-ref'] = node_vld.cp_name + prop['vnfd-id-ref'] = node_vld.vnf._id vld_connection_point_list.append(prop) index_count += 1 if len(vld_connection_point_list) > 1: @@ -79,10 +80,8 @@ class ToscaNetwork(ManoResource): def get_ip_profile_props(specs): ip_profile_prop = {} ip_profile_param = {} - if 'name' in specs: - ip_profile_prop['name'] = specs['name'] - elif 'description' in specs: - ip_profile_prop['name'] = specs['description'] + if 'ip_profile_ref' in self._vld: + ip_profile_prop['name'] = self._vld['ip_profile_ref'] if 'description' in specs: ip_profile_prop['description'] = specs['description'] @@ -90,10 +89,10 @@ class ToscaNetwork(ManoResource): ip_profile_param['gateway-address'] = specs['gateway_ip'] if 'ip_version' in specs: ip_profile_param['ip-version'] = 'ipv' + str(specs['ip_version']) - if 'ip_version' in specs: + if 'cidr' in specs: ip_profile_param['subnet-address'] = specs['cidr'] + ip_profile_prop['ip-profile-params'] = ip_profile_param - ip_profile_prop['ip-profile-params'] = ip_profile_param return ip_profile_prop tosca_props = self.get_tosca_props() self._vld = get_vld_props(tosca_props) @@ -129,7 +128,8 @@ class ToscaNetwork(ManoResource): ip_profile_props = convert_keys_to_python(self._ip_profile) try: nsd.vld.add().from_dict(vld_props) - nsd.ip_profiles.add().from_dict(ip_profile_props) + if len(ip_profile_props) > 1: + nsd.ip_profiles.add().from_dict(ip_profile_props) except Exception as e: err_msg = _("{0} Exception vld from dict {1}: {2}"). \ format(self, props, e)