Merge "[Fullstack] Drop all linuxbridge scenarios from fullstack tests"
This commit is contained in:
commit
b1585c52dc
@ -188,7 +188,7 @@ class TestPlacementBandwidthReport(base.BaseFullStackTestCase):
|
|||||||
scenarios = [
|
scenarios = [
|
||||||
(constants.AGENT_TYPE_OVS,
|
(constants.AGENT_TYPE_OVS,
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_OVS,
|
{'l2_agent_type': constants.AGENT_TYPE_OVS,
|
||||||
'mech_drivers': 'openvswitch,linuxbridge',
|
'mech_drivers': 'openvswitch',
|
||||||
'placement_port': '8080'}),
|
'placement_port': '8080'}),
|
||||||
(constants.AGENT_TYPE_NIC_SWITCH,
|
(constants.AGENT_TYPE_NIC_SWITCH,
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_NIC_SWITCH,
|
{'l2_agent_type': constants.AGENT_TYPE_NIC_SWITCH,
|
||||||
|
@ -20,7 +20,6 @@ from oslo_utils import uuidutils
|
|||||||
import testscenarios
|
import testscenarios
|
||||||
|
|
||||||
from neutron.common import utils as common_utils
|
from neutron.common import utils as common_utils
|
||||||
from neutron.tests import base as tests_base
|
|
||||||
from neutron.tests.common import net_helpers
|
from neutron.tests.common import net_helpers
|
||||||
from neutron.tests.fullstack import base
|
from neutron.tests.fullstack import base
|
||||||
from neutron.tests.fullstack.resources import config
|
from neutron.tests.fullstack.resources import config
|
||||||
@ -150,22 +149,6 @@ class TestOvsConnectivitySameNetworkOnOvsBridgeControllerStop(
|
|||||||
signal.SIGKILL)
|
signal.SIGKILL)
|
||||||
|
|
||||||
|
|
||||||
class TestLinuxBridgeConnectivitySameNetwork(BaseConnectivitySameNetworkTest):
|
|
||||||
|
|
||||||
l2_agent_type = constants.AGENT_TYPE_LINUXBRIDGE
|
|
||||||
scenarios = [
|
|
||||||
('VXLAN', {'network_type': 'vxlan',
|
|
||||||
'l2_pop': False}),
|
|
||||||
('VLANs', {'network_type': 'vlan',
|
|
||||||
'l2_pop': False}),
|
|
||||||
('VXLAN and l2pop', {'network_type': 'vxlan',
|
|
||||||
'l2_pop': True})
|
|
||||||
]
|
|
||||||
|
|
||||||
def test_connectivity(self):
|
|
||||||
self._test_connectivity()
|
|
||||||
|
|
||||||
|
|
||||||
class _TestUninterruptedConnectivityOnL2AgentRestart(
|
class _TestUninterruptedConnectivityOnL2AgentRestart(
|
||||||
BaseConnectivitySameNetworkTest):
|
BaseConnectivitySameNetworkTest):
|
||||||
|
|
||||||
@ -210,20 +193,3 @@ class TestUninterruptedConnectivityOnL2AgentRestartOvs(
|
|||||||
|
|
||||||
def test_l2_agent_restart(self, agent_restart_timeout=20):
|
def test_l2_agent_restart(self, agent_restart_timeout=20):
|
||||||
self._test_l2_agent_restart(agent_restart_timeout)
|
self._test_l2_agent_restart(agent_restart_timeout)
|
||||||
|
|
||||||
|
|
||||||
class TestUninterruptedConnectivityOnL2AgentRestartLB(
|
|
||||||
_TestUninterruptedConnectivityOnL2AgentRestart):
|
|
||||||
|
|
||||||
scenario = [('LB',
|
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_LINUXBRIDGE})]
|
|
||||||
|
|
||||||
scenarios = (
|
|
||||||
testscenarios.multiply_scenarios(
|
|
||||||
scenario,
|
|
||||||
_TestUninterruptedConnectivityOnL2AgentRestart.network_scenarios)
|
|
||||||
)
|
|
||||||
|
|
||||||
@tests_base.unstable_test("bug 1928764")
|
|
||||||
def test_l2_agent_restart(self, agent_restart_timeout=20):
|
|
||||||
self._test_l2_agent_restart(agent_restart_timeout)
|
|
||||||
|
@ -33,8 +33,6 @@ class BaseDhcpAgentTest(base.BaseFullStackTestCase):
|
|||||||
scenarios = [
|
scenarios = [
|
||||||
(constants.AGENT_TYPE_OVS,
|
(constants.AGENT_TYPE_OVS,
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_OVS}),
|
{'l2_agent_type': constants.AGENT_TYPE_OVS}),
|
||||||
(constants.AGENT_TYPE_LINUXBRIDGE,
|
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_LINUXBRIDGE})
|
|
||||||
]
|
]
|
||||||
boot_vm_for_test = True
|
boot_vm_for_test = True
|
||||||
dhcp_scheduler_class = None
|
dhcp_scheduler_class = None
|
||||||
|
@ -37,8 +37,6 @@ class PortShutDownTest(base.BaseFullStackTestCase):
|
|||||||
num_hosts = 1
|
num_hosts = 1
|
||||||
|
|
||||||
scenarios = [
|
scenarios = [
|
||||||
(constants.AGENT_TYPE_LINUXBRIDGE,
|
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_LINUXBRIDGE}),
|
|
||||||
(constants.AGENT_TYPE_OVS,
|
(constants.AGENT_TYPE_OVS,
|
||||||
{'l2_agent_type': constants.AGENT_TYPE_OVS})
|
{'l2_agent_type': constants.AGENT_TYPE_OVS})
|
||||||
]
|
]
|
||||||
|
@ -32,10 +32,6 @@ class TestPortsRebind(base.BaseFullStackTestCase):
|
|||||||
('Open vSwitch Agent', {
|
('Open vSwitch Agent', {
|
||||||
'l2_agent_type': constants.AGENT_TYPE_OVS,
|
'l2_agent_type': constants.AGENT_TYPE_OVS,
|
||||||
'l2_mechdriver_name': 'openvswitch',
|
'l2_mechdriver_name': 'openvswitch',
|
||||||
}),
|
|
||||||
('Linux Bridge Agent', {
|
|
||||||
'l2_agent_type': constants.AGENT_TYPE_LINUXBRIDGE,
|
|
||||||
'l2_mechdriver_name': 'linuxbridge',
|
|
||||||
})]
|
})]
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -170,9 +166,6 @@ class TestRouterPortRebind(TestPortsRebind):
|
|||||||
5. Router's port created in p.3 should be now bound properly
|
5. Router's port created in p.3 should be now bound properly
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if self.l2_agent_type == constants.AGENT_TYPE_LINUXBRIDGE:
|
|
||||||
self.skipTest("Bug 1798085")
|
|
||||||
|
|
||||||
gw_port = self.safe_client.client.list_ports(
|
gw_port = self.safe_client.client.list_ports(
|
||||||
device_id=self.router['id'],
|
device_id=self.router['id'],
|
||||||
device_owner=constants.DEVICE_OWNER_ROUTER_GW)['ports'][0]
|
device_owner=constants.DEVICE_OWNER_ROUTER_GW)['ports'][0]
|
||||||
|
@ -20,7 +20,6 @@ from neutron_lib.services.qos import constants as qos_consts
|
|||||||
from neutronclient.common import exceptions
|
from neutronclient.common import exceptions
|
||||||
from oslo_utils import uuidutils
|
from oslo_utils import uuidutils
|
||||||
|
|
||||||
from neutron.agent.linux import tc_lib
|
|
||||||
from neutron.common import utils
|
from neutron.common import utils
|
||||||
from neutron.tests.common.agents import l2_extensions
|
from neutron.tests.common.agents import l2_extensions
|
||||||
from neutron.tests.fullstack import base
|
from neutron.tests.fullstack import base
|
||||||
@ -30,11 +29,6 @@ from neutron.tests.fullstack.resources import machine
|
|||||||
from neutron.tests.unit import testlib_api
|
from neutron.tests.unit import testlib_api
|
||||||
|
|
||||||
from neutron.agent.common import ovs_lib
|
from neutron.agent.common import ovs_lib
|
||||||
from neutron.conf.plugins.ml2.drivers import linuxbridge as \
|
|
||||||
linuxbridge_agent_config
|
|
||||||
from neutron.plugins.ml2.drivers.linuxbridge.agent import \
|
|
||||||
linuxbridge_neutron_agent as linuxbridge_agent
|
|
||||||
from neutron.services.qos.drivers.linuxbridge import driver as lb_drv
|
|
||||||
from neutron.services.qos.drivers.openvswitch import driver as ovs_drv
|
from neutron.services.qos.drivers.openvswitch import driver as ovs_drv
|
||||||
|
|
||||||
|
|
||||||
@ -404,46 +398,6 @@ class TestBwLimitQoSOvs(_TestBwLimitQoS, base.BaseFullStackTestCase):
|
|||||||
self.assertIsNone(qos_queues)
|
self.assertIsNone(qos_queues)
|
||||||
|
|
||||||
|
|
||||||
class TestBwLimitQoSLinuxbridge(_TestBwLimitQoS, base.BaseFullStackTestCase):
|
|
||||||
l2_agent_type = constants.AGENT_TYPE_LINUXBRIDGE
|
|
||||||
scenarios = [
|
|
||||||
('egress', {'direction': constants.EGRESS_DIRECTION}),
|
|
||||||
('ingress', {'direction': constants.INGRESS_DIRECTION}),
|
|
||||||
]
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def _get_expected_burst_value(limit, direction):
|
|
||||||
# For egress bandwidth limit this value should be calculated as
|
|
||||||
# bandwidth_limit * qos_consts.DEFAULT_BURST_RATE
|
|
||||||
if direction == constants.EGRESS_DIRECTION:
|
|
||||||
return TestBwLimitQoSLinuxbridge._get_expected_egress_burst_value(
|
|
||||||
limit)
|
|
||||||
else:
|
|
||||||
return TestBwLimitQoSLinuxbridge._get_expected_ingress_burst_value(
|
|
||||||
limit)
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def _get_expected_ingress_burst_value(limit):
|
|
||||||
return int(
|
|
||||||
float(limit) /
|
|
||||||
float(linuxbridge_agent_config.DEFAULT_KERNEL_HZ_VALUE))
|
|
||||||
|
|
||||||
def _wait_for_bw_rule_applied(self, vm, limit, burst, direction):
|
|
||||||
port_name = linuxbridge_agent.LinuxBridgeManager.get_tap_device_name(
|
|
||||||
vm.neutron_port['id'])
|
|
||||||
tc = tc_lib.TcCommand(
|
|
||||||
port_name,
|
|
||||||
linuxbridge_agent_config.DEFAULT_KERNEL_HZ_VALUE,
|
|
||||||
namespace=vm.host.host_namespace
|
|
||||||
)
|
|
||||||
if direction == constants.EGRESS_DIRECTION:
|
|
||||||
utils.wait_until_true(
|
|
||||||
lambda: tc.get_filters_bw_limits() == (limit, burst))
|
|
||||||
elif direction == constants.INGRESS_DIRECTION:
|
|
||||||
utils.wait_until_true(
|
|
||||||
lambda: tc.get_tbf_bw_limits() == (limit, burst))
|
|
||||||
|
|
||||||
|
|
||||||
class _TestDscpMarkingQoS(BaseQoSRuleTestCase):
|
class _TestDscpMarkingQoS(BaseQoSRuleTestCase):
|
||||||
|
|
||||||
number_of_hosts = 2
|
number_of_hosts = 2
|
||||||
@ -540,15 +494,6 @@ class TestDscpMarkingQoSOvs(_TestDscpMarkingQoS, base.BaseFullStackTestCase):
|
|||||||
vm.bridge, vm.port.name, dscp_mark)
|
vm.bridge, vm.port.name, dscp_mark)
|
||||||
|
|
||||||
|
|
||||||
class TestDscpMarkingQoSLinuxbridge(_TestDscpMarkingQoS,
|
|
||||||
base.BaseFullStackTestCase):
|
|
||||||
l2_agent_type = constants.AGENT_TYPE_LINUXBRIDGE
|
|
||||||
|
|
||||||
def _wait_for_dscp_marking_rule_applied(self, vm, dscp_mark):
|
|
||||||
l2_extensions.wait_until_dscp_marking_rule_applied_linuxbridge(
|
|
||||||
vm.host.host_namespace, vm.port.name, dscp_mark)
|
|
||||||
|
|
||||||
|
|
||||||
class _TestPacketRateLimitQoS(BaseQoSRuleTestCase):
|
class _TestPacketRateLimitQoS(BaseQoSRuleTestCase):
|
||||||
|
|
||||||
number_of_hosts = 1
|
number_of_hosts = 1
|
||||||
@ -644,9 +589,6 @@ class TestQoSWithL2Population(base.BaseFullStackTestCase):
|
|||||||
(constants.AGENT_TYPE_OVS,
|
(constants.AGENT_TYPE_OVS,
|
||||||
{'mech_drivers': 'openvswitch',
|
{'mech_drivers': 'openvswitch',
|
||||||
'supported_rules': ovs_drv.SUPPORTED_RULES}),
|
'supported_rules': ovs_drv.SUPPORTED_RULES}),
|
||||||
(constants.AGENT_TYPE_LINUXBRIDGE,
|
|
||||||
{'mech_drivers': 'linuxbridge',
|
|
||||||
'supported_rules': lb_drv.SUPPORTED_RULES})
|
|
||||||
]
|
]
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
@ -94,9 +94,6 @@ class TestSecurityGroupsSameNetwork(BaseSecurityGroupsSameNetworkTest):
|
|||||||
|
|
||||||
network_type = 'vxlan'
|
network_type = 'vxlan'
|
||||||
scenarios = [
|
scenarios = [
|
||||||
# TODO(njohnston): Re-add the linuxbridge scenario once it is stable
|
|
||||||
# The iptables_hybrid driver lacks isolation between agents and
|
|
||||||
# because of that using only one host is enough
|
|
||||||
('ovs-hybrid', {
|
('ovs-hybrid', {
|
||||||
'firewall_driver': 'iptables_hybrid',
|
'firewall_driver': 'iptables_hybrid',
|
||||||
'l2_agent_type': constants.AGENT_TYPE_OVS,
|
'l2_agent_type': constants.AGENT_TYPE_OVS,
|
||||||
|
@ -11,7 +11,6 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from neutron_lib import constants
|
from neutron_lib import constants
|
||||||
from neutronclient.common import exceptions
|
|
||||||
from oslo_utils import uuidutils
|
from oslo_utils import uuidutils
|
||||||
|
|
||||||
from neutron.tests.common.agents import l2_extensions
|
from neutron.tests.common.agents import l2_extensions
|
||||||
@ -72,8 +71,7 @@ class TestSegmentationId(BaseSegmentationIdTest):
|
|||||||
|
|
||||||
scenarios = [
|
scenarios = [
|
||||||
('Open vSwitch Agent', {'l2_agent_type': constants.AGENT_TYPE_OVS}),
|
('Open vSwitch Agent', {'l2_agent_type': constants.AGENT_TYPE_OVS}),
|
||||||
('Linux Bridge Agent', {
|
]
|
||||||
'l2_agent_type': constants.AGENT_TYPE_LINUXBRIDGE})]
|
|
||||||
num_hosts = 1
|
num_hosts = 1
|
||||||
|
|
||||||
def test_change_segmentation_id_no_ports_in_network(self):
|
def test_change_segmentation_id_no_ports_in_network(self):
|
||||||
@ -103,12 +101,6 @@ class TestSegmentationId(BaseSegmentationIdTest):
|
|||||||
self.safe_client.create_port(self.project_id, network['id'],
|
self.safe_client.create_port(self.project_id, network['id'],
|
||||||
self.environment.hosts[0].hostname)
|
self.environment.hosts[0].hostname)
|
||||||
|
|
||||||
if self.l2_agent_type == constants.AGENT_TYPE_LINUXBRIDGE:
|
|
||||||
# Linuxbridge agent don't support update of segmentation_id for
|
|
||||||
# the network so this should raise an exception
|
|
||||||
self.assertRaises(exceptions.BadRequest,
|
|
||||||
self._update_segmentation_id, network)
|
|
||||||
else:
|
|
||||||
self._update_segmentation_id(network)
|
self._update_segmentation_id(network)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user