Esempio n. 1
0
 def __add_new_interface(self, node, interface_attrs):
     interface = NodeNICInterface()
     interface.node_id = node.id
     self.__set_interface_attributes(interface, interface_attrs)
     db().add(interface)
     db().commit()
     node.interfaces.append(interface)
Esempio n. 2
0
 def __add_new_interface(self, node, interface_attrs):
     interface = NodeNICInterface()
     interface.node_id = node.id
     self.__set_interface_attributes(interface, interface_attrs)
     db().add(interface)
     db().commit()
     node.interfaces.append(interface)
Esempio n. 3
0
    def update_interfaces_info(self, node):
        if not "interfaces" in node.meta:
            raise Exception("No interfaces metadata specified for node")

        for interface in node.meta["interfaces"]:
            nicInterface = NodeNICInterface()
            nicInterface.node_id = node.id
            nicInterface.name = interface["name"]
            nicInterface.mac = interface["mac"]
            if "max_speed" in interface:
                nicInterface.max_speed = interface["max_speed"]
            if "current_speed" in interface:
                nicInterface.current_speed = interface["current_speed"]
            self.db.add(nicInterface)
            self.db.commit()
            node.interfaces.append(nicInterface)
Esempio n. 4
0
    def update_interfaces_info(self, node):
        if not "interfaces" in node.meta:
            raise Exception("No interfaces metadata specified for node")

        for interface in node.meta["interfaces"]:
            nicInterface = NodeNICInterface()
            nicInterface.node_id = node.id
            nicInterface.name = interface["name"]
            nicInterface.mac = interface["mac"]
            if "max_speed" in interface:
                nicInterface.max_speed = interface["max_speed"]
            if "current_speed" in interface:
                nicInterface.current_speed = interface["current_speed"]
            self.db.add(nicInterface)
            self.db.commit()
            node.interfaces.append(nicInterface)
Esempio n. 5
0
 def get_nics_from_meta(self, node):
     nics = []
     if node.meta and node.meta.get('interfaces'):
         for i in node.meta['interfaces']:
             if 'name' not in i or 'mac' not in i:
                 logger.debug('Some node NIC interface in "meta" doesn\'t'
                              ' have name or mac')
                 continue
             nic = NodeNICInterface()
             nic.node_id = node.id
             for key in ('name', 'mac', 'current_speed', 'max_speed'):
                 if key in i:
                     setattr(nic, key, i[key])
             # Skip duplicated interfaces.
             if filter(lambda k: k.mac == nic.mac, nics):
                 logger.debug('Duplicated interface with MAC %r for node %r'
                              ' (id: %s)',
                              nic.mac, node.name, node.id)
                 continue
             nics.append(nic)
     return nics
Esempio n. 6
0
 def get_nics_from_meta(self, node):
     nics = []
     if node.meta and node.meta.get('interfaces'):
         for i in node.meta['interfaces']:
             if 'name' not in i or 'mac' not in i:
                 logger.debug('Some node NIC interface in "meta" doesn\'t'
                              ' have name or mac')
                 continue
             nic = NodeNICInterface()
             nic.node_id = node.id
             for key in ('name', 'mac', 'current_speed', 'max_speed'):
                 if key in i:
                     setattr(nic, key, i[key])
             # Skip duplicated interfaces.
             if filter(lambda k: k.mac == nic.mac, nics):
                 logger.debug(
                     'Duplicated interface with MAC %r for node %r'
                     ' (id: %s)', nic.mac, node.name, node.id)
                 continue
             nics.append(nic)
     return nics