def form(self): elements = Grid(2, 8) is_network_up = network_up() if is_network_up: header_message = "oVirt Engine Configuration" else: header_message = "Network Down, oVirt Engine Configuration Disabled" heading = Label(header_message) self.ncs.screen.setColor(customColorset(1), "black", "magenta") heading.setColors(customColorset(1)) elements.setField(heading, 0, 0, anchorLeft = 1) rhevm_grid = Grid(2,2) rhevm_grid.setField(Label("Management Server:"), 0, 0, anchorLeft = 1) self.rhevm_server = Entry(25, "") self.rhevm_server.setCallback(self.valid_rhevm_server_callback) rhevm_grid.setField(Label("Management Server Port:"), 0, 1, anchorLeft = 1) self.rhevm_server_port = Entry(6, "", scroll = 0) self.rhevm_server_port.setCallback(self.valid_rhevm_server_port_callback) rhevm_grid.setField(self.rhevm_server, 1, 0, anchorLeft = 1, padding=(2, 0, 0, 1)) rhevm_grid.setField(self.rhevm_server_port, 1, 1, anchorLeft = 1, padding=(2, 0, 0, 1)) elements.setField(rhevm_grid, 0, 1, anchorLeft = 1, padding = (0,0,0,0)) elements.setField(Label(""), 0, 2, anchorLeft = 1) self.verify_rhevm_cert = Checkbox("Connect to oVirt Engine and Validate Certificate", isOn=True) elements.setField(self.verify_rhevm_cert, 0, 3, anchorLeft = 1, padding = (0,0,0,0)) elements.setField(Label(""), 0, 4, anchorLeft = 1) elements.setField(Label("Set oVirt Engine Admin Password"), 0, 5, anchorLeft = 1) pw_elements = Grid(3,3) pw_elements.setField(Label("Password: "******"Confirm Password: "******"", wrap=1) elements.setField(pw_elements, 0, 6, anchorLeft=1) elements.setField(self.pw_msg, 0, 7, padding = (0,0,0,0)) inputFields = [self.rhevm_server, self.rhevm_server_port, self.verify_rhevm_cert, self.root_password_1, self.root_password_2] if not is_network_up: for field in inputFields: field.setFlags(FLAG_DISABLED, FLAGS_SET) try: rhevm_server = get_rhevm_config() rhevm_server,rhevm_port = rhevm_server.split(":") if rhevm_server.startswith("None"): self.rhevm_server.set("") else: self.rhevm_server.set(rhevm_server) self.rhevm_server_port.set(rhevm_port) except: pass return [Label(""), elements]
def read_status_datas(): status_text = [] if network_up(): network_status = {} client = gudev.Client(['net']) # reload augeas tree aug.load() for nic in client.query_by_subsystem("net"): try: interface = nic.get_property("INTERFACE") logger.debug(interface) if not interface == "lo": if(has_ip_address(interface) or get_ipv6_address(interface)): ipv4_address = get_ip_address(interface) try: ipv6_address, netmask = get_ipv6_address(interface) except: ipv6_address = "" network_status[interface] = ( ipv4_address, ipv6_address) except: pass # remove parent/bridge duplicates for key in sorted(network_status.iterkeys()): if key.startswith("br"): parent_dev = key[+2:] if network_status.has_key(parent_dev): del network_status[parent_dev] for key in sorted(network_status.iterkeys()): ipv4_addr, ipv6_addr = network_status[key] cmd = "/files/etc/sysconfig/network-scripts/" +\ "ifcfg-%s/BOOTPROTO" % str(key) dev_bootproto = augtool_get(cmd) if dev_bootproto is None: cmd = "/files/etc/sysconfig/network-scripts/" +\ "ifcfg-br%s/BOOTPROTO" % str(key) dev_bootproto = augtool_get(cmd) if dev_bootproto is None: dev_bootproto = "Disabled" if not nic_link_detected(key): ipv4_addr = "(Link Inactive)" if ipv4_addr.strip() == "" and dev_bootproto.strip() == "dhcp": if "Inactive" in ipv4_addr: ipv4_addr = "(Link Inactive)" else: ipv4_addr = "(DHCP Failed)" if OVIRT_VARS.has_key("OVIRT_IPV6") and ipv6_addr != "": pass else: ipv6_addr = "" status_text.append([key.strip(), dev_bootproto.strip(), ipv4_addr.strip(), ipv6_addr.strip()]) logger.debug(status_text) logger.debug(network_status) else: status_text.append(["Not Connected", "", "", ""]) return status_text
def _getHeaderInfo(self): self.registered = hasRegistered() self.started = hasStarted() self.deprecated = hasDeprecated() self.is_network_up = network_up() if self.is_network_up: header_message = "IMVP Configuration" if self.started and not self.registered: header_message += " (Network Up, but Not Registered)" else: header_message = "Network Down, IMVP Configuration Disabled" return header_message
def read_status_datas(): status_text = [] if network_up(): network_status = {} client = gudev.Client(['net']) # reload augeas tree aug.load() for nic in client.query_by_subsystem("net"): try: interface = nic.get_property("INTERFACE") logger.debug(interface) if not interface == "lo": if (has_ip_address(interface) or get_ipv6_address(interface)): ipv4_address = get_ip_address(interface) try: ipv6_address, netmask = get_ipv6_address(interface) except: ipv6_address = "" network_status[interface] = (ipv4_address, ipv6_address) except: pass # remove parent/bridge duplicates for key in sorted(network_status.iterkeys()): if key.startswith("br"): parent_dev = key[+2:] if network_status.has_key(parent_dev): del network_status[parent_dev] for key in sorted(network_status.iterkeys()): ipv4_addr, ipv6_addr = network_status[key] cmd = "/files/etc/sysconfig/network-scripts/" +\ "ifcfg-%s/BOOTPROTO" % str(key) dev_bootproto = augtool_get(cmd) if dev_bootproto is None: cmd = "/files/etc/sysconfig/network-scripts/" +\ "ifcfg-br%s/BOOTPROTO" % str(key) dev_bootproto = augtool_get(cmd) if dev_bootproto is None: dev_bootproto = "Disabled" if not nic_link_detected(key): ipv4_addr = "(Link Inactive)" if ipv4_addr.strip() == "" and dev_bootproto.strip() == "dhcp": if "Inactive" in ipv4_addr: ipv4_addr = "(Link Inactive)" else: ipv4_addr = "(DHCP Failed)" if OVIRT_VARS.has_key("OVIRT_IPV6") and ipv6_addr != "": pass else: ipv6_addr = "" status_text.append([ key.strip(), dev_bootproto.strip(), ipv4_addr.strip(), ipv6_addr.strip() ]) logger.debug(status_text) logger.debug(network_status) else: status_text.append(["Not Connected", "", "", ""]) return status_text
def form(self): elements = Grid(2, 8) is_network_up = network_up() if is_network_up: header_message = "RHEV-M Configuration" else: header_message = "Network Down, RHEV-M Configuration Disabled" heading = Label(header_message) self.ncs.screen.setColor(customColorset(1), "black", "magenta") heading.setColors(customColorset(1)) elements.setField(heading, 0, 0, anchorLeft=1) rhevm_grid = Grid(2, 2) rhevm_grid.setField(Label("Management Server:"), 0, 0, anchorLeft=1) self.rhevm_server = Entry(25, "") self.rhevm_server.setCallback(self.valid_rhevm_server_callback) rhevm_grid.setField(Label("Management Server Port:"), 0, 1, anchorLeft=1) self.rhevm_server_port = Entry(6, "", scroll=0) self.rhevm_server_port.setCallback( self.valid_rhevm_server_port_callback) rhevm_grid.setField(self.rhevm_server, 1, 0, anchorLeft=1, padding=(2, 0, 0, 1)) rhevm_grid.setField(self.rhevm_server_port, 1, 1, anchorLeft=1, padding=(2, 0, 0, 1)) elements.setField(rhevm_grid, 0, 1, anchorLeft=1, padding=(0, 0, 0, 0)) elements.setField(Label(""), 0, 2, anchorLeft=1) self.verify_rhevm_cert = Checkbox( "Connect to RHEV Manager and Validate Certificate", isOn=True) elements.setField(self.verify_rhevm_cert, 0, 3, anchorLeft=1, padding=(0, 0, 0, 0)) elements.setField(Label(""), 0, 4, anchorLeft=1) elements.setField(Label("Set RHEV-M Admin Password"), 0, 5, anchorLeft=1) pw_elements = Grid(3, 3) pw_elements.setField(Label("Password: "******"Confirm Password: "******"", wrap=1) elements.setField(pw_elements, 0, 6, anchorLeft=1) elements.setField(self.pw_msg, 0, 7, padding=(0, 0, 0, 0)) inputFields = [ self.rhevm_server, self.rhevm_server_port, self.verify_rhevm_cert, self.root_password_1, self.root_password_2 ] if not is_network_up: for field in inputFields: field.setFlags(FLAG_DISABLED, FLAGS_SET) try: rhevm_server = get_rhevm_config() rhevm_server, rhevm_port = rhevm_server.split(":") if rhevm_server.startswith("None"): self.rhevm_server.set("") else: self.rhevm_server.set(rhevm_server) self.rhevm_server_port.set(rhevm_port) except: pass return [Label(""), elements]