Example #1
0
    def _GET(self, *param, **params):
        host_id = self.chk_hostby1(param)
        if host_id is None: return web.notfound()

        self.view.host_id = host_id
        bond_list = get_bonding_info()

        if self.is_mode_input() is True:
            exist_bond_max_num = -1
            exist_bond_list = get_ifconfig_info("regex:^bond")
            for bond_name in exist_bond_list.keys():
                try:
                    num = int(bond_name.replace("bond", ""))
                except ValueError:
                    continue

                if exist_bond_max_num < num:
                    exist_bond_max_num = num

            self.view.create_bond_name = "bond%s" % (exist_bond_max_num + 1)
            dev_list = get_ifconfig_info("regex:^eth")
            for bond in bond_list:
                for slave in bond_list[bond]['slave']:
                    if slave in dev_list:
                        dev_list[slave]['bond'] = bond

            #pysical_dev_list = get_ifconfig_info("regex:^peth")
            pysical_dev_list = get_ifconfig_info("regex:^br")
            for pysical_dev in pysical_dev_list:
                if pysical_dev[1:] in dev_list:
                    dev_list[pysical_dev[1:]]['bridge'] = pysical_dev

            self.view.bond_target_dev = dev_list
            self.view.hypervisors = available_virt_mechs()
            return True

        dev_list = get_ifconfig_info()

        for bond in bond_list:
            if bond in dev_list:
                dev_list[bond]['bond'] = True
                for slave in bond_list[bond]['slave']:
                    for dev in dev_list:
                        if dev == slave:
                            dev_list[dev]['bond'] = True

        self.view.current = dev_list
        self.view.bond_list = bond_list

        return True
    def _GET(self, *param, **params):
        host_id = self.chk_hostby1(param)
        if host_id is None: return web.notfound()

        self.view.host_id = host_id
        bond_list = get_bonding_info()

        if self.is_mode_input() is True:
            exist_bond_max_num = -1
            exist_bond_list = get_ifconfig_info("regex:^bond")
            for bond_name in exist_bond_list.keys():
                try:
                    num = int(bond_name.replace("bond",""))
                except ValueError:
                    continue

                if exist_bond_max_num < num:
                    exist_bond_max_num = num

            self.view.create_bond_name = "bond%s" % (exist_bond_max_num + 1)
            dev_list = get_ifconfig_info("regex:^eth")
            for bond in bond_list:
                for slave in bond_list[bond]['slave']:
                    if slave in dev_list:
                        dev_list[slave]['bond'] = bond

            #pysical_dev_list = get_ifconfig_info("regex:^peth")
            pysical_dev_list = get_ifconfig_info("regex:^br")
            for pysical_dev in pysical_dev_list:
                if pysical_dev[1:] in dev_list:
                    dev_list[pysical_dev[1:]]['bridge'] = pysical_dev

            self.view.bond_target_dev = dev_list
            self.view.hypervisors = available_virt_mechs()
            return True

        dev_list = get_ifconfig_info()

        for bond in bond_list:
            if bond in dev_list:
                dev_list[bond]['bond'] = True
                for slave in bond_list[bond]['slave']:
                    for dev in dev_list:
                        if dev == slave:
                            dev_list[dev]['bond'] = True

        self.view.current = dev_list
        self.view.bond_list = bond_list

        return True
    def _GET(self, *param, **params):
        host_id = self.chk_hostby1(param)
        if host_id is None: return web.notfound()

        self.view.host_id = host_id
        self.view.current = get_ifconfig_info()
        self.view.device = param[1]

        modules = ["ifcfg"]

        host = findbyhost1(self.orm, host_id)
        dop = read_conf(modules,self,host)
        if dop is False:
            self.logger.error("Get nic info failed. Failed read conf.")
            return web.internalerror('Internal Server Error. (Read conf)')

        self.view.bootproto = dop.get("ifcfg",[self.view.device,"BOOTPROTO"])
        if self.view.bootproto is False:
            self.view.bootproto = "static"

        self.view.onboot    = dop.get("ifcfg",[self.view.device,"ONBOOT"])
        if self.view.onboot is False:
            self.view.onboot = "yes"

        self.view.ipaddr    = dop.get("ifcfg",[self.view.device,"IPADDR"])
        if self.view.ipaddr is False:
            self.view.ipaddr = ""

        self.view.netmask   = dop.get("ifcfg",[self.view.device,"NETMASK"])
        if self.view.netmask is False:
            self.view.netmask = ""

        self.view.network   = dop.get("ifcfg",[self.view.device,"NETWORK"])
        if self.view.network is False:
            net = NetworkAddress("%s/%s" % (self.view.ipaddr,self.view.netmask))
            if net.valid_addr(self.view.ipaddr) is True and net.valid_addr(self.view.netmask) is True:
                self.view.network = net.network
            else:
                self.view.network = ""

        self.view.broadcast = dop.get("ifcfg",[self.view.device,"BROADCAST"])
        if self.view.broadcast is False:
            net = NetworkAddress("%s/%s" % (self.view.ipaddr,self.view.netmask))
            if net.valid_addr(self.view.ipaddr) is True and net.valid_addr(self.view.netmask) is True:
                self.view.broadcast = net.broadcast
            else:
                self.view.broadcast = ""

        self.view.master    = dop.get("ifcfg",[self.view.device,"MASTER"])
        if self.view.master is False:
            self.view.master = ""

        self.view.c_ipaddr    = self.view.current[self.view.device]["ipaddr"]
        if self.view.c_ipaddr is None:
            self.view.c_ipaddr = ""

        self.view.c_netmask   = self.view.current[self.view.device]["mask"]
        if self.view.c_netmask is None:
            self.view.c_netmask = ""

        if self.view.current[self.view.device]["cidr"] is None:
            self.view.c_network = ""
        else:
            self.view.c_network = re.sub("\/.*","",self.view.current[self.view.device]["cidr"])

        self.view.c_broadcast = self.view.current[self.view.device]["bcast"]
        if self.view.c_broadcast is None:
            net = NetworkAddress("%s/%s" % (self.view.c_ipaddr,self.view.c_netmask))
            if net.valid_addr(self.view.c_ipaddr) is True and net.valid_addr(self.view.c_netmask) is True:
                self.view.c_broadcast = net.broadcast
            else:
                self.view.c_broadcast = ""

        self.view.c_hwaddr = self.view.current[self.view.device]["hwaddr"]
        if self.view.c_hwaddr is None:
            self.view.c_hwaddr = ""

        self.view.bond_info = get_bonding_info()

        self.view.c_master = ""
        for bond in self.view.bond_info:
            for slave in self.view.bond_info[bond]['slave']:
                if self.view.device == slave:
                    self.view.c_master = bond

        return True
Example #4
0
    def _GET(self, *param, **params):
        host_id = self.chk_hostby1(param)
        if host_id is None: return web.notfound()

        self.view.host_id = host_id
        self.view.current = get_ifconfig_info()
        self.view.device = param[1]

        modules = ["ifcfg"]

        host = findbyhost1(self.orm, host_id)
        dop = read_conf(modules, self, host)
        if dop is False:
            self.logger.error("Get nic info failed. Failed read conf.")
            return web.internalerror('Internal Server Error. (Read conf)')

        self.view.bootproto = dop.get("ifcfg", [self.view.device, "BOOTPROTO"])
        if self.view.bootproto is False:
            self.view.bootproto = "static"

        self.view.onboot = dop.get("ifcfg", [self.view.device, "ONBOOT"])
        if self.view.onboot is False:
            self.view.onboot = "yes"

        self.view.ipaddr = dop.get("ifcfg", [self.view.device, "IPADDR"])
        if self.view.ipaddr is False:
            self.view.ipaddr = ""

        self.view.netmask = dop.get("ifcfg", [self.view.device, "NETMASK"])
        if self.view.netmask is False:
            self.view.netmask = ""

        self.view.network = dop.get("ifcfg", [self.view.device, "NETWORK"])
        if self.view.network is False:
            net = NetworkAddress("%s/%s" %
                                 (self.view.ipaddr, self.view.netmask))
            if net.valid_addr(self.view.ipaddr) is True and net.valid_addr(
                    self.view.netmask) is True:
                self.view.network = net.network
            else:
                self.view.network = ""

        self.view.broadcast = dop.get("ifcfg", [self.view.device, "BROADCAST"])
        if self.view.broadcast is False:
            net = NetworkAddress("%s/%s" %
                                 (self.view.ipaddr, self.view.netmask))
            if net.valid_addr(self.view.ipaddr) is True and net.valid_addr(
                    self.view.netmask) is True:
                self.view.broadcast = net.broadcast
            else:
                self.view.broadcast = ""

        self.view.master = dop.get("ifcfg", [self.view.device, "MASTER"])
        if self.view.master is False:
            self.view.master = ""

        self.view.c_ipaddr = self.view.current[self.view.device]["ipaddr"]
        if self.view.c_ipaddr is None:
            self.view.c_ipaddr = ""

        self.view.c_netmask = self.view.current[self.view.device]["mask"]
        if self.view.c_netmask is None:
            self.view.c_netmask = ""

        if self.view.current[self.view.device]["cidr"] is None:
            self.view.c_network = ""
        else:
            self.view.c_network = re.sub(
                "\/.*", "", self.view.current[self.view.device]["cidr"])

        self.view.c_broadcast = self.view.current[self.view.device]["bcast"]
        if self.view.c_broadcast is None:
            net = NetworkAddress("%s/%s" %
                                 (self.view.c_ipaddr, self.view.c_netmask))
            if net.valid_addr(self.view.c_ipaddr) is True and net.valid_addr(
                    self.view.c_netmask) is True:
                self.view.c_broadcast = net.broadcast
            else:
                self.view.c_broadcast = ""

        self.view.c_hwaddr = self.view.current[self.view.device]["hwaddr"]
        if self.view.c_hwaddr is None:
            self.view.c_hwaddr = ""

        self.view.bond_info = get_bonding_info()

        self.view.c_master = ""
        for bond in self.view.bond_info:
            for slave in self.view.bond_info[bond]['slave']:
                if self.view.device == slave:
                    self.view.c_master = bond

        return True