X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=osm_ro%2Fvimconn_vmware.py;h=562cfcca1a53e14f584e899350eacbc0bf366a34;hb=refs%2Fchanges%2F14%2F5814%2F4;hp=f99ef6539d5cd79e4a5b715066ec50e7f6d4959a;hpb=98e909c77827a222ad5658554dee51ecffbdaff0;p=osm%2FRO.git diff --git a/osm_ro/vimconn_vmware.py b/osm_ro/vimconn_vmware.py index f99ef653..562cfcca 100644 --- a/osm_ro/vimconn_vmware.py +++ b/osm_ro/vimconn_vmware.py @@ -671,6 +671,9 @@ class vimconnector(vimconn.vimconnector): networks = self.vca.get_networks(vdc.get_name()) filter_dict = {} + if not networks: + vimconn.vimconnNotFoundException("Network {} not found".format(net_id)) + for network in networks: vdc_network_id = network.get_id().split(":") if len(vdc_network_id) == 4 and vdc_network_id[3] == net_id: @@ -686,9 +689,16 @@ class vimconnector(vimconn.vimconnector): filter_dict["type"] = "bridge" self.logger.debug("Returning {}".format(filter_dict)) return filter_dict - except: + else: + raise vimconn.vimconnNotFoundException("Network {} not found".format(net_id)) + + except Exception as e: self.logger.debug("Error in get_network") self.logger.debug(traceback.format_exc()) + if isinstance(e, vimconn.vimconnException): + raise + else: + raise vimconn.vimconnNotFoundException("Failed : Network not found {} ".format(e)) return filter_dict @@ -791,7 +801,7 @@ class vimconnector(vimconn.vimconnector): new_flavor=flavor_data ram = flavor_data.get(FLAVOR_RAM_KEY, 1024) cpu = flavor_data.get(FLAVOR_VCPUS_KEY, 1) - disk = flavor_data.get(FLAVOR_DISK_KEY, 1) + disk = flavor_data.get(FLAVOR_DISK_KEY, 0) if not isinstance(ram, int): raise vimconn.vimconnException("Non-integer value for ram") @@ -1388,9 +1398,9 @@ class vimconnector(vimconn.vimconnector): the VLAN tag to be used. In case net_id is provided, the internal network vlan is used for tagging VF 'type': (mandatory) can be one of: 'virtual', in this case always connected to a network of type 'net_type=bridge' - 'PF' (passthrough): depending on VIM capabilities it can be connected to a data/ptp network ot it + 'PCI-PASSTHROUGH' or 'PF' (passthrough): depending on VIM capabilities it can be connected to a data/ptp network ot it can created unconnected - 'VF' (SRIOV with VLAN tag): same as PF for network connectivity. + 'SR-IOV' or 'VF' (SRIOV with VLAN tag): same as PF for network connectivity. 'VFnotShared'(SRIOV without VLAN tag) same as PF for network connectivity. VF where no other VFs are allocated on the same physical NIC 'bw': (optional) only for PF/VF/VFnotShared. Minimal Bandwidth required for the interface in GBPS @@ -1564,9 +1574,9 @@ class vimconnector(vimconn.vimconnector): reserve_memory = False for net in net_list: - if net["type"]=="PF": + if net["type"] == "PF" or net["type"] == "PCI-PASSTHROUGH": pci_devices_info.append(net) - elif (net["type"]=="VF" or net["type"]=="VFnotShared") and 'net_id'in net: + elif (net["type"] == "VF" or net["type"] == "SR-IOV" or net["type"] == "VFnotShared") and 'net_id'in net: sriov_net_info.append(net) #Add PCI @@ -1670,7 +1680,7 @@ class vimconnector(vimconn.vimconnector): self.vca.block_until_completed(task) # connect network to VM - with all DHCP by default - type_list = ['PF','VF','VFnotShared'] + type_list = ('PF', 'PCI-PASSTHROUGH', 'VF', 'SR-IOV', 'VFnotShared') if 'type' in net and net['type'] not in type_list: # fetching nic type from vnf if 'model' in net: @@ -4637,7 +4647,7 @@ class vimconnector(vimconn.vimconnector): for sriov_net in sriov_nets: network_name = sriov_net.get('net_id') dvs_portgr_name = self.create_dvPort_group(network_name) - if sriov_net.get('type') == "VF": + if sriov_net.get('type') == "VF" or sriov_net.get('type') == "SR-IOV": #add vlan ID ,Modify portgroup for vlan ID self.configure_vlanID(content, vcenter_conect, network_name)