Merge "Move network objects to extension"
This commit is contained in:
commit
05be83199a
|
@ -21,10 +21,10 @@ Handlers dealing with network configurations
|
|||
from nailgun.api.v1.handlers.base import BaseHandler
|
||||
from nailgun.api.v1.handlers.base import content
|
||||
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NovaNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NovaNetworkConfigurationSerializer
|
||||
|
||||
from nailgun.api.v1.validators.network import NetworkConfigurationValidator
|
||||
from nailgun.api.v1.validators.network import NetworkTemplateValidator
|
||||
|
|
|
@ -33,7 +33,8 @@ from nailgun import consts
|
|||
from nailgun.errors import errors
|
||||
from nailgun import objects
|
||||
|
||||
from nailgun.objects.serializers.node import NodeInterfacesSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.nic import \
|
||||
NodeInterfacesSerializer
|
||||
|
||||
from nailgun.db import db
|
||||
from nailgun.db.sqlalchemy.models import NetworkGroup
|
||||
|
|
|
@ -18,7 +18,8 @@ import copy
|
|||
import six
|
||||
|
||||
from nailgun import consts
|
||||
from nailgun.objects.serializers import network_configuration
|
||||
from nailgun.extensions.network_manager.objects.serializers import \
|
||||
network_configuration
|
||||
|
||||
from . import base as base_tests
|
||||
from ..objects import adapters
|
||||
|
|
|
@ -20,8 +20,9 @@ from distutils import version
|
|||
import six
|
||||
|
||||
from nailgun import consts
|
||||
from nailgun.extensions.network_manager.objects.serializers import \
|
||||
network_configuration
|
||||
from nailgun import objects
|
||||
from nailgun.objects.serializers import network_configuration
|
||||
from nailgun import utils
|
||||
|
||||
from .objects import adapters
|
||||
|
|
|
@ -28,10 +28,11 @@ import six
|
|||
|
||||
from nailgun import consts
|
||||
from nailgun.errors import errors
|
||||
from nailgun.extensions.network_manager.objects.serializers.nic import \
|
||||
NodeInterfacesSerializer
|
||||
from nailgun.logger import logger
|
||||
from nailgun.network import utils
|
||||
from nailgun import objects
|
||||
from nailgun.objects.serializers.node import NodeInterfacesSerializer
|
||||
from nailgun.settings import settings
|
||||
from nailgun import utils as nailgun_utils
|
||||
from nailgun.utils.restrictions import RestrictionBase
|
||||
|
|
|
@ -16,10 +16,10 @@
|
|||
|
||||
|
||||
from nailgun.db.sqlalchemy import models
|
||||
from nailgun.objects.interface import DPDKMixin
|
||||
from nailgun.extensions.network_manager.objects.interface import DPDKMixin
|
||||
from nailgun.extensions.network_manager.objects.interface import NIC
|
||||
from nailgun.objects import NailgunCollection
|
||||
from nailgun.objects import NailgunObject
|
||||
from nailgun.objects import NIC
|
||||
from nailgun.objects.serializers.base import BasicSerializer
|
||||
|
||||
|
|
@ -20,12 +20,13 @@ from sqlalchemy.sql import not_
|
|||
from nailgun.db import db
|
||||
from nailgun.db.sqlalchemy import models
|
||||
from nailgun.errors import errors
|
||||
from nailgun.extensions.network_manager.objects.serializers.ip_addr import \
|
||||
IPAddrSerializer
|
||||
from nailgun.objects import Cluster
|
||||
from nailgun.objects import NailgunCollection
|
||||
from nailgun.objects import NailgunObject
|
||||
from nailgun.objects import NetworkGroup
|
||||
from nailgun.objects.serializers.base import BasicSerializer
|
||||
from nailgun.objects.serializers.ip_addr import IPAddrSerializer
|
||||
|
||||
|
||||
class IPAddr(NailgunObject):
|
|
@ -20,11 +20,12 @@ from nailgun import consts
|
|||
from nailgun.db import db
|
||||
from nailgun.db.sqlalchemy import models
|
||||
from nailgun.errors import errors
|
||||
from nailgun.extensions.network_manager.objects.serializers.network_group \
|
||||
import NetworkGroupSerializer
|
||||
from nailgun.logger import logger
|
||||
from nailgun.objects import Cluster
|
||||
from nailgun.objects import NailgunCollection
|
||||
from nailgun.objects import NailgunObject
|
||||
from nailgun.objects.serializers.network_group import NetworkGroupSerializer
|
||||
|
||||
from sqlalchemy.sql import or_
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
# Copyright 2016 Mirantis, Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from distutils.version import StrictVersion
|
||||
|
||||
from nailgun import consts
|
||||
|
||||
from nailgun.objects.serializers.base import BasicSerializer
|
||||
from nailgun.settings import settings
|
||||
|
||||
|
||||
class NodeInterfacesSerializer(BasicSerializer):
|
||||
|
||||
nic_fields = (
|
||||
'id',
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'interface_properties',
|
||||
'state',
|
||||
'current_speed',
|
||||
'max_speed',
|
||||
'assigned_networks',
|
||||
'driver',
|
||||
'bus_info',
|
||||
'offloading_modes',
|
||||
'pxe'
|
||||
)
|
||||
bond_fields = (
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'interface_properties',
|
||||
'mode',
|
||||
'bond_properties',
|
||||
'state',
|
||||
'assigned_networks',
|
||||
'offloading_modes'
|
||||
)
|
||||
|
||||
nic_fields_60 = (
|
||||
'id',
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'state',
|
||||
'current_speed',
|
||||
'max_speed',
|
||||
'assigned_networks',
|
||||
'driver',
|
||||
'bus_info',
|
||||
)
|
||||
bond_fields_60 = (
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'mode',
|
||||
'bond_properties',
|
||||
'state',
|
||||
'assigned_networks'
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _get_env_version(cls, instance):
|
||||
"""Returns environment's version.
|
||||
|
||||
Returns current Fuel version by default.
|
||||
"""
|
||||
if instance.node.cluster:
|
||||
return instance.node.cluster.release.environment_version
|
||||
return settings.VERSION["release"]
|
||||
|
||||
@classmethod
|
||||
def serialize_nic_interface(cls, instance, fields=None):
|
||||
if not fields:
|
||||
if StrictVersion(cls._get_env_version(instance)) < \
|
||||
StrictVersion('6.1'):
|
||||
fields = cls.nic_fields_60
|
||||
else:
|
||||
fields = cls.nic_fields
|
||||
return BasicSerializer.serialize(
|
||||
instance,
|
||||
fields=fields
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def serialize_bond_interface(cls, instance, fields=None):
|
||||
if not fields:
|
||||
if StrictVersion(cls._get_env_version(instance)) < \
|
||||
StrictVersion('6.1'):
|
||||
fields = cls.bond_fields_60
|
||||
else:
|
||||
fields = cls.bond_fields
|
||||
data_dict = BasicSerializer.serialize(
|
||||
instance,
|
||||
fields=fields
|
||||
)
|
||||
data_dict['slaves'] = [{'name': slave.name}
|
||||
for slave in instance.slaves]
|
||||
return data_dict
|
||||
|
||||
@classmethod
|
||||
def serialize(cls, instance, fields=None):
|
||||
iface_types = consts.NETWORK_INTERFACE_TYPES
|
||||
if instance.type == iface_types.ether:
|
||||
return cls.serialize_nic_interface(instance, fields)
|
||||
elif instance.type == iface_types.bond:
|
||||
return cls.serialize_bond_interface(instance, fields)
|
|
@ -28,12 +28,12 @@ from nailgun.logger import logger
|
|||
from nailgun import objects
|
||||
from nailgun.task.helpers import TaskHelper
|
||||
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NetworkConfigurationSerializer
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NovaNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NovaNetworkConfigurationSerializer
|
||||
|
||||
|
||||
class NetworkCheck(object):
|
||||
|
|
|
@ -47,18 +47,20 @@ from nailgun.objects.deployment_history import DeploymentHistoryCollection
|
|||
from nailgun.objects.notification import Notification
|
||||
from nailgun.objects.notification import NotificationCollection
|
||||
|
||||
from nailgun.objects.network_group import NetworkGroup
|
||||
from nailgun.objects.network_group import NetworkGroupCollection
|
||||
from nailgun.extensions.network_manager.objects.network_group import \
|
||||
NetworkGroup
|
||||
from nailgun.extensions.network_manager.objects.network_group import \
|
||||
NetworkGroupCollection
|
||||
|
||||
from nailgun.objects.ip_addr import IPAddr
|
||||
from nailgun.objects.ip_addr import IPAddrCollection
|
||||
from nailgun.objects.ip_addr import IPAddrRange
|
||||
from nailgun.extensions.network_manager.objects.ip_addr import IPAddr
|
||||
from nailgun.extensions.network_manager.objects.ip_addr import IPAddrCollection
|
||||
from nailgun.extensions.network_manager.objects.ip_addr import IPAddrRange
|
||||
|
||||
from nailgun.objects.interface import NIC
|
||||
from nailgun.objects.interface import NICCollection
|
||||
from nailgun.extensions.network_manager.objects.interface import NIC
|
||||
from nailgun.extensions.network_manager.objects.interface import NICCollection
|
||||
|
||||
from nailgun.objects.bond import Bond
|
||||
from nailgun.objects.bond import BondCollection
|
||||
from nailgun.extensions.network_manager.objects.bond import Bond
|
||||
from nailgun.extensions.network_manager.objects.bond import BondCollection
|
||||
|
||||
from nailgun.objects.node import Node
|
||||
from nailgun.objects.node import NodeAttributes
|
||||
|
|
|
@ -1525,7 +1525,8 @@ class Cluster(NailgunObject):
|
|||
@classmethod
|
||||
def get_network_attributes(cls, instance):
|
||||
# use local import to avoid recursive imports
|
||||
from nailgun.objects.serializers import network_configuration
|
||||
from nailgun.extensions.network_manager.objects.serializers import \
|
||||
network_configuration
|
||||
|
||||
if instance.net_provider == consts.CLUSTER_NET_PROVIDERS.nova_network:
|
||||
serializer = \
|
||||
|
|
|
@ -14,12 +14,7 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from distutils.version import StrictVersion
|
||||
|
||||
from nailgun import consts
|
||||
|
||||
from nailgun.objects.serializers.base import BasicSerializer
|
||||
from nailgun.settings import settings
|
||||
|
||||
|
||||
class NodeSerializer(BasicSerializer):
|
||||
|
@ -55,102 +50,3 @@ class NodeSerializer(BasicSerializer):
|
|||
data_dict = super(NodeSerializer, cls).serialize(instance, fields)
|
||||
data_dict['fqdn'] = Node.get_node_fqdn(instance)
|
||||
return data_dict
|
||||
|
||||
|
||||
class NodeInterfacesSerializer(BasicSerializer):
|
||||
|
||||
nic_fields = (
|
||||
'id',
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'interface_properties',
|
||||
'state',
|
||||
'current_speed',
|
||||
'max_speed',
|
||||
'assigned_networks',
|
||||
'driver',
|
||||
'bus_info',
|
||||
'offloading_modes',
|
||||
'pxe'
|
||||
)
|
||||
bond_fields = (
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'interface_properties',
|
||||
'mode',
|
||||
'bond_properties',
|
||||
'state',
|
||||
'assigned_networks',
|
||||
'offloading_modes'
|
||||
)
|
||||
|
||||
nic_fields_60 = (
|
||||
'id',
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'state',
|
||||
'current_speed',
|
||||
'max_speed',
|
||||
'assigned_networks',
|
||||
'driver',
|
||||
'bus_info',
|
||||
)
|
||||
bond_fields_60 = (
|
||||
'mac',
|
||||
'name',
|
||||
'type',
|
||||
'mode',
|
||||
'bond_properties',
|
||||
'state',
|
||||
'assigned_networks'
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _get_env_version(cls, instance):
|
||||
"""Returns environment's version.
|
||||
|
||||
Returns current Fuel version by default.
|
||||
"""
|
||||
if instance.node.cluster:
|
||||
return instance.node.cluster.release.environment_version
|
||||
return settings.VERSION["release"]
|
||||
|
||||
@classmethod
|
||||
def serialize_nic_interface(cls, instance, fields=None):
|
||||
if not fields:
|
||||
if StrictVersion(cls._get_env_version(instance)) < \
|
||||
StrictVersion('6.1'):
|
||||
fields = cls.nic_fields_60
|
||||
else:
|
||||
fields = cls.nic_fields
|
||||
return BasicSerializer.serialize(
|
||||
instance,
|
||||
fields=fields
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def serialize_bond_interface(cls, instance, fields=None):
|
||||
if not fields:
|
||||
if StrictVersion(cls._get_env_version(instance)) < \
|
||||
StrictVersion('6.1'):
|
||||
fields = cls.bond_fields_60
|
||||
else:
|
||||
fields = cls.bond_fields
|
||||
data_dict = BasicSerializer.serialize(
|
||||
instance,
|
||||
fields=fields
|
||||
)
|
||||
data_dict['slaves'] = [{'name': slave.name}
|
||||
for slave in instance.slaves]
|
||||
return data_dict
|
||||
|
||||
@classmethod
|
||||
def serialize(cls, instance, fields=None):
|
||||
iface_types = consts.NETWORK_INTERFACE_TYPES
|
||||
if instance.type == iface_types.ether:
|
||||
return cls.serialize_nic_interface(instance, fields)
|
||||
elif instance.type == iface_types.bond:
|
||||
return cls.serialize_bond_interface(instance, fields)
|
||||
|
|
|
@ -20,10 +20,10 @@ import traceback
|
|||
|
||||
from oslo_serialization import jsonutils
|
||||
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NovaNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NovaNetworkConfigurationSerializer
|
||||
|
||||
from nailgun import consts
|
||||
from nailgun.db import db
|
||||
|
|
|
@ -30,8 +30,9 @@ import yaml
|
|||
import nailgun
|
||||
from nailgun import consts
|
||||
from nailgun.errors import errors
|
||||
from nailgun.extensions.network_manager.objects.serializers \
|
||||
import network_configuration
|
||||
from nailgun import objects
|
||||
from nailgun.objects.serializers import network_configuration
|
||||
|
||||
from nailgun.db.sqlalchemy.models import IPAddr
|
||||
from nailgun.db.sqlalchemy.models import IPAddrRange
|
||||
|
|
|
@ -20,10 +20,10 @@ from oslo_serialization import jsonutils
|
|||
import yaml
|
||||
|
||||
from nailgun.objects import Cluster
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.objects.serializers.network_configuration \
|
||||
import NovaNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NeutronNetworkConfigurationSerializer
|
||||
from nailgun.extensions.network_manager.objects.serializers.\
|
||||
network_configuration import NovaNetworkConfigurationSerializer
|
||||
|
||||
from nailgun import consts
|
||||
from nailgun.db.sqlalchemy.models import NeutronConfig
|
||||
|
|
Loading…
Reference in New Issue