X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_ro%2Fvimconn_vmware.py;h=733cf6540f744dacd7be085012c785fbd119af66;hb=abac1e20c3b93bdc7eb58d0ee8e2e0fd062389db;hp=4c81b9b0bd20875a4dd427f0383ce020f41e779f;hpb=c5bf293a528facda126d80073f2a730201400264;p=osm%2FRO.git diff --git a/osm_ro/vimconn_vmware.py b/osm_ro/vimconn_vmware.py index 4c81b9b0..733cf654 100644 --- a/osm_ro/vimconn_vmware.py +++ b/osm_ro/vimconn_vmware.py @@ -586,7 +586,7 @@ class vimconnector(vimconn.vimconnector): shared = False filter_dict["shared"] = shared filter_dict["tenant_id"] = vdc_uuid - if net_details.get('status') == 1: + if int(net_details.get('status')) == 1: filter_dict["admin_state_up"] = True else: filter_dict["admin_state_up"] = False @@ -674,7 +674,7 @@ class vimconnector(vimconn.vimconnector): shared = False filter_entry["shared"] = shared filter_entry["tenant_id"] = vdcid - if net_details.get('status') == 1: + if int(net_details.get('status')) == 1: filter_entry["admin_state_up"] = True else: filter_entry["admin_state_up"] = False @@ -745,7 +745,7 @@ class vimconnector(vimconn.vimconnector): shared = False filter_dict["shared"] = shared filter_dict["tenant_id"] = vdc_id - if net_details.get('status') == 1: + if int(net_details.get('status')) == 1: filter_dict["admin_state_up"] = True else: filter_dict["admin_state_up"] = False @@ -2251,27 +2251,34 @@ class vimconnector(vimconn.vimconnector): 'vim_info': yaml.safe_dump(vm_info), 'interfaces': []} # get networks - vm_ip = None - vm_mac = None - if vm.NetworkConnectionSection.NetworkConnection: - vm_mac = vm.NetworkConnectionSection.NetworkConnection.MACAddress - if vm_ip is None: - if not nsx_edge_list: - nsx_edge_list = self.get_edge_details() - if nsx_edge_list is None: - raise vimconn.vimconnException("refresh_vms_status:"\ - "Failed to get edge details from NSX Manager") - if vm_mac is not None: - vm_ip = self.get_ipaddr_from_NSXedge(nsx_edge_list, vm_mac) - - network_name = vm.NetworkConnectionSection.NetworkConnection.get('network') - vm_net_id = self.get_network_id_by_name(network_name) - interface = {"mac_address": vm_mac, - "vim_net_id": vm_net_id, - "vim_interface_id": vm_net_id, - 'ip_address': vm_ip} - - vm_dict["interfaces"].append(interface) + vm_ip= None + vm_mac = None + networks = re.findall('',result) + for network in networks: + mac_s = re.search('(.*?)',network) + vm_mac = mac_s.group(1) if mac_s else None + ip_s = re.search('(.*?)',network) + vm_ip = ip_s.group(1) if ip_s else None + + if vm_ip is None: + if not nsx_edge_list: + nsx_edge_list = self.get_edge_details() + if nsx_edge_list is None: + raise vimconn.vimconnException("refresh_vms_status:"\ + "Failed to get edge details from NSX Manager") + if vm_mac is not None: + vm_ip = self.get_ipaddr_from_NSXedge(nsx_edge_list, vm_mac) + + net_s = re.search('network="(.*?)"',network) + network_name = net_s.group(1) if net_s else None + + vm_net_id = self.get_network_id_by_name(network_name) + interface = {"mac_address": vm_mac, + "vim_net_id": vm_net_id, + "vim_interface_id": vm_net_id, + "ip_address": vm_ip} + + vm_dict["interfaces"].append(interface) # add a vm to vm dict vms_dict.setdefault(vmuuid, vm_dict)