[Ovirt-devel] [PATCH] map nics-> bridges correctly in network pages, when cancelling nic configuration return to network page
Joey Boggs
jboggs at redhat.com
Thu Aug 11 19:52:15 UTC 2011
rhbz#720568
Signed-off-by: Joey Boggs <jboggs at redhat.com>
---
scripts/ovirt-config-setup.py | 41 +++++++++++++++++------------------------
1 files changed, 17 insertions(+), 24 deletions(-)
diff --git a/scripts/ovirt-config-setup.py b/scripts/ovirt-config-setup.py
index 4bd46d5..bddf6aa 100755
--- a/scripts/ovirt-config-setup.py
+++ b/scripts/ovirt-config-setup.py
@@ -774,6 +774,7 @@ class NodeConfigScreen():
try:
dev_interface = device.get_property("INTERFACE")
dev_vendor = device.get_property("ID_VENDOR_FROM_DATABASE")
+ dev_type = device.get_property("DEVTYPE")
try:
dev_vendor = dev_vendor.replace(",", "")
except AttributeError:
@@ -797,9 +798,10 @@ class NodeConfigScreen():
cmd = "/files/etc/sysconfig/network-scripts/ifcfg-%s/BOOTPROTO" % str(dev_interface)
dev_bootproto = augtool_get(cmd)
type_cmd = "/files/etc/sysconfig/network-scripts/ifcfg-%s/TYPE" % str(dev_interface)
- dev_type = augtool_get(type_cmd)
+ bridge_cmd = "/files/etc/sysconfig/network-scripts/ifcfg-%s/BRIDGE" % str(dev_interface)
+ dev_bridge = augtool_get(bridge_cmd)
if dev_bootproto is None:
- cmd = "/files/etc/sysconfig/network-scripts/ifcfg-br%s/BOOTPROTO" % str(dev_interface)
+ cmd = "/files/etc/sysconfig/network-scripts/ifcfg-%s/BOOTPROTO" % str(dev_bridge)
dev_bootproto = augtool_get(cmd)
if dev_bootproto is None:
dev_bootproto = "Disabled"
@@ -810,20 +812,17 @@ class NodeConfigScreen():
dev_conf_status = "Configured "
if dev_conf_status == "Configured ":
self.configured_nics = self.configured_nics + 1
- if dev_type is None:
- type_cmd = "/files/etc/sysconfig/network-scripts/ifcfg-br%s/TYPE" % str(dev_interface)
- dev_type = augtool_get(type_cmd)
except:
pass
- if not dev_interface == "lo" and not dev_interface.startswith("br") and not dev_interface.startswith("bond") and not dev_interface.startswith("sit") and not "." in dev_interface:
- if not dev_type == "Bridge":
- self.nic_dict[dev_interface] = "%s,%s,%s,%s,%s,%s" % (dev_interface,dev_bootproto,dev_vendor,dev_address, dev_driver, dev_conf_status)
+ if not dev_interface == "lo" and not dev_interface.startswith("bond") and not dev_interface.startswith("sit") and not "." in dev_interface:
+ if not dev_type == "bridge":
+ self.nic_dict[dev_interface] = "%s,%s,%s,%s,%s,%s,%s" % (dev_interface,dev_bootproto,dev_vendor,dev_address, dev_driver, dev_conf_status,dev_bridge)
if len(self.nic_dict) > 5:
self.nic_lb = Listbox(height = 5, width = 56, returnExit = 1, scroll = 1)
else:
self.nic_lb = Listbox(height = 5, width = 56, returnExit = 1, scroll = 0)
for key in sorted(self.nic_dict.iterkeys()):
- dev_interface,dev_bootproto,dev_vendor,dev_address,dev_driver,dev_conf_status = self.nic_dict[key].split(",", 5)
+ dev_interface,dev_bootproto,dev_vendor,dev_address,dev_driver,dev_conf_status,dev_bridge = self.nic_dict[key].split(",", 6)
to_rem = len(dev_vendor) - 10
# if negative pad name space
if to_rem < 1:
@@ -861,7 +860,8 @@ class NodeConfigScreen():
link_status = "Active"
else:
link_status = "Inactive"
- interface,bootproto,vendor,address,driver,conf_status = self.nic_dict[self.nic_lb.current()].split(",", 5)
+ dev = self.nic_lb.current()
+ interface,bootproto,vendor,address,driver,conf_status,dev_bridge = self.nic_dict[dev].split(",", 6)
nic_detail_grid = Grid(6, 10)
nic_detail_grid.setField(Label("Interface: "), 0, 1, anchorLeft = 1, padding=(0,0,1,0))
nic_detail_grid.setField(Label("Protocol: "), 0, 2, anchorLeft = 1, padding=(0,0,1,0))
@@ -901,28 +901,24 @@ class NodeConfigScreen():
self.ipv4_netdevmask.setCallback(self.ipv4_netmask_callback)
self.ipv4_netdevgateway = Entry(16, "", scroll = 0)
self.ipv4_netdevgateway.setCallback(self.ipv4_gateway_callback)
+ if not dev_bridge is None:
+ dev = dev_bridge
if "OVIRT_IP_ADDRESS" in OVIRT_VARS:
self.ipv4_netdevip.set(OVIRT_VARS["OVIRT_IP_ADDRESS"])
else:
- current_ip = get_ip_address(self.nic_lb.current())
- if current_ip == "":
- current_ip = get_ip_address("br" + self.nic_lb.current())
+ current_ip = get_ip_address(dev)
if current_ip != "":
self.ipv4_netdevip.set(current_ip)
if "OVIRT_IP_NETMASK" in OVIRT_VARS:
self.ipv4_netdevmask.set(OVIRT_VARS["OVIRT_IP_NETMASK"])
else:
- current_netmask = get_netmask(self.nic_lb.current())
- if current_netmask == "":
- current_netmask = get_netmask("br" + self.nic_lb.current())
- if current_ip != "":
+ current_netmask = get_netmask(dev)
+ if current_netmask != "":
self.ipv4_netdevmask.set(current_netmask)
if "OVIRT_IP_GATEWAY" in OVIRT_VARS:
self.ipv4_netdevgateway.set(OVIRT_VARS["OVIRT_IP_GATEWAY"])
else:
- current_gateway = get_gateway(self.nic_lb.current())
- if current_gateway == "":
- current_gateway = get_gateway("br" + self.nic_lb.current())
+ current_gateway = get_gateway(dev)
if is_valid_ipv4(current_gateway) or is_valid_ipv6(current_gateway):
self.ipv4_netdevgateway.set(current_gateway)
ipv4_grid = Grid (5,3)
@@ -1576,10 +1572,7 @@ class NodeConfigScreen():
elif self.net_apply_config == 1:
self.__current_page = NETWORK_PAGE
elif is_managed():
- dev_interface,dev_bootproto,dev_vendor,dev_address,dev_driver,dev_conf_status = self.nic_dict[self.nic_lb.current()].split(",", 5)
- if self.configured_nics >= 1 and dev_conf_status != "Configured" :
- ButtonChoiceWindow(self.screen, "Network", "Hypervisor is already managed, unable to configure additional nics", buttons = ['Ok'])
- self.__current_page = NETWORK_PAGE
+ self.__current_page = NETWORK_PAGE
elif self.__nic_config_failed == 1:
self.__current_page = NETWORK_DETAILS_PAGE
else:
--
1.7.6
More information about the ovirt-devel
mailing list