Beispiel #1
0
class IpPayload(base.NotificationPayloadBase):
    # Version 1.0: Initial version
    VERSION = '1.0'
    fields = {
        'label': fields.StringField(),
        'mac': fields.MACAddressField(),
        'meta': fields.DictOfStringsField(),
        'port_uuid': fields.UUIDField(nullable=True),
        'version': fields.IntegerField(),
        'address': fields.IPV4AndV6AddressField(),
        'device_name': fields.StringField(nullable=True)
    }

    @classmethod
    def from_network_info(cls, network_info):
        """Returns a list of IpPayload object based on the passed
        network_info.
        """
        ips = []
        if network_info is not None:
            for vif in network_info:
                for ip in vif.fixed_ips():
                    ips.append(
                        cls(label=vif["network"]["label"],
                            mac=vif["address"],
                            meta=vif["meta"],
                            port_uuid=vif["id"],
                            version=ip["version"],
                            address=ip["address"],
                            device_name=vif["devname"]))
        return ips
Beispiel #2
0
class IpPayload(base.NotificationPayloadBase):
    # Version 1.0: Initial version
    VERSION = '1.0'
    fields = {
        'label': fields.StringField(),
        'mac': fields.MACAddressField(),
        'meta': fields.DictOfStringsField(),
        'port_uuid': fields.UUIDField(nullable=True),
        'version': fields.IntegerField(),
        'address': fields.IPV4AndV6AddressField(),
        'device_name': fields.StringField(nullable=True)
    }
class NetworkInterfaceMetadata(DeviceMetadata):
    # Version 1.0: Initial version
    # Version 1.1: Add vlans field
    VERSION = '1.1'

    fields = {
        'mac': fields.MACAddressField(),
        'vlan': fields.IntegerField(),
    }

    def obj_make_compatible(self, primitive, target_version):
        target_version = versionutils.convert_version_to_tuple(target_version)
        if target_version < (1, 1) and 'vlan' in primitive:
            del primitive['vlan']
Beispiel #4
0
class NicDiagnostics(base.NovaObject):

    # Version 1.0: Initial version
    VERSION = '1.0'

    fields = {
        'mac_address': fields.MACAddressField(nullable=True),
        'rx_octets': fields.IntegerField(nullable=True),
        'rx_errors': fields.IntegerField(nullable=True),
        'rx_drop': fields.IntegerField(nullable=True),
        'rx_packets': fields.IntegerField(nullable=True),
        'rx_rate': fields.IntegerField(nullable=True),
        'tx_octets': fields.IntegerField(nullable=True),
        'tx_errors': fields.IntegerField(nullable=True),
        'tx_drop': fields.IntegerField(nullable=True),
        'tx_packets': fields.IntegerField(nullable=True),
        'tx_rate': fields.IntegerField(nullable=True)
    }
class NetworkInterfaceMetadata(DeviceMetadata):
    VERSION = '1.0'

    fields = {
        'mac': fields.MACAddressField(),
    }