From 6fcc62b71bd4a7aadca38a294708f70670a6916b Mon Sep 17 00:00:00 2001 From: YAMAMOTO Takashi Date: Tue, 10 Nov 2015 15:13:07 +0900 Subject: [PATCH] Remove MidonetInterfaceDriver Now it lives in networking-midonet repository. Closes-Bug: #1510826 Depends-On: I0a4d19ddeddfde2319dcbe24665a24d371625b10 Related-blueprint: core-vendor-decomposition Change-Id: Ifd18ee1703541d04f1a4717a8b0b8e6dc61a2f4e --- neutron/agent/linux/interface.py | 39 -------------- neutron/tests/unit/agent/common/test_utils.py | 6 --- .../tests/unit/agent/linux/test_interface.py | 52 ------------------- setup.cfg | 1 - 4 files changed, 98 deletions(-) diff --git a/neutron/agent/linux/interface.py b/neutron/agent/linux/interface.py index ad235be89..83b8e741d 100644 --- a/neutron/agent/linux/interface.py +++ b/neutron/agent/linux/interface.py @@ -358,45 +358,6 @@ class OVSInterfaceDriver(LinuxInterfaceDriver): device_name) -class MidonetInterfaceDriver(LinuxInterfaceDriver): - - def plug_new(self, network_id, port_id, device_name, mac_address, - bridge=None, namespace=None, prefix=None): - """This method is called by the Dhcp agent or by the L3 agent - when a new network is created - """ - ip = ip_lib.IPWrapper() - tap_name = device_name.replace(prefix or n_const.TAP_DEVICE_PREFIX, - n_const.TAP_DEVICE_PREFIX) - - # Create ns_dev in a namespace if one is configured. - root_dev, ns_dev = ip.add_veth(tap_name, device_name, - namespace2=namespace) - - ns_dev.link.set_address(mac_address) - - # Add an interface created by ovs to the namespace. - namespace_obj = ip.ensure_namespace(namespace) - namespace_obj.add_device_to_namespace(ns_dev) - - ns_dev.link.set_up() - root_dev.link.set_up() - - cmd = ['mm-ctl', '--bind-port', port_id, device_name] - utils.execute(cmd, run_as_root=True) - - def unplug(self, device_name, bridge=None, namespace=None, prefix=None): - # the port will be deleted by the dhcp agent that will call the plugin - device = ip_lib.IPDevice(device_name, namespace=namespace) - try: - device.link.delete() - except RuntimeError: - LOG.error(_LE("Failed unplugging interface '%s'"), device_name) - LOG.debug("Unplugged interface '%s'", device_name) - - ip_lib.IPWrapper(namespace=namespace).garbage_collect_namespace() - - class IVSInterfaceDriver(LinuxInterfaceDriver): """Driver for creating an internal interface on an IVS bridge.""" diff --git a/neutron/tests/unit/agent/common/test_utils.py b/neutron/tests/unit/agent/common/test_utils.py index 772b4e354..12eda7a2a 100644 --- a/neutron/tests/unit/agent/common/test_utils.py +++ b/neutron/tests/unit/agent/common/test_utils.py @@ -71,12 +71,6 @@ class TestLoadInterfaceDriver(base.BaseTestCase): self.assertIsInstance(utils.load_interface_driver(self.conf), interface.BridgeInterfaceDriver) - def test_load_midonet_interface_driver_success(self): - self.conf.set_override('interface_driver', - 'midonet') - self.assertIsInstance(utils.load_interface_driver(self.conf), - interface.MidonetInterfaceDriver) - def test_load_ovs_interface_driver_success(self): self.conf.set_override('interface_driver', 'openvswitch') diff --git a/neutron/tests/unit/agent/linux/test_interface.py b/neutron/tests/unit/agent/linux/test_interface.py index 86f542ae1..ce008cfe2 100644 --- a/neutron/tests/unit/agent/linux/test_interface.py +++ b/neutron/tests/unit/agent/linux/test_interface.py @@ -14,7 +14,6 @@ # under the License. import mock -from oslo_utils import uuidutils import testtools from neutron.agent.common import config @@ -654,54 +653,3 @@ class TestIVSInterfaceDriver(TestBase): execute.assert_called_once_with(ivsctl_cmd, run_as_root=True) self.ip_dev.assert_has_calls([mock.call('ns-0', namespace=None), mock.call().link.delete()]) - - -class TestMidonetInterfaceDriver(TestBase): - def setUp(self): - self.conf = config.setup_conf() - self.conf.register_opts(interface.OPTS) - self.driver = interface.MidonetInterfaceDriver(self.conf) - self.network_id = uuidutils.generate_uuid() - self.port_id = uuidutils.generate_uuid() - self.device_name = "tap0" - self.mac_address = "aa:bb:cc:dd:ee:ff" - self.bridge = "br-test" - self.namespace = "ns-test" - super(TestMidonetInterfaceDriver, self).setUp() - - def test_plug(self): - cmd = ['mm-ctl', '--bind-port', self.port_id, 'tap0'] - self.device_exists.return_value = False - - root_dev = mock.Mock() - ns_dev = mock.Mock() - self.ip().add_veth = mock.Mock(return_value=(root_dev, ns_dev)) - with mock.patch.object(utils, 'execute') as execute: - self.driver.plug( - self.network_id, self.port_id, - self.device_name, self.mac_address, - self.bridge, self.namespace) - execute.assert_called_once_with(cmd, run_as_root=True) - - expected = [mock.call(), mock.call(), - mock.call().add_veth(self.device_name, - self.device_name, - namespace2=self.namespace), - mock.call().ensure_namespace(self.namespace), - mock.call().ensure_namespace().add_device_to_namespace( - mock.ANY)] - - ns_dev.assert_has_calls( - [mock.call.link.set_address(self.mac_address)]) - - root_dev.assert_has_calls([mock.call.link.set_up()]) - ns_dev.assert_has_calls([mock.call.link.set_up()]) - self.ip.assert_has_calls(expected, True) - - def test_unplug(self): - self.driver.unplug(self.device_name, self.bridge, self.namespace) - - self.ip_dev.assert_has_calls([ - mock.call(self.device_name, namespace=self.namespace), - mock.call().link.delete()]) - self.ip.assert_has_calls([mock.call().garbage_collect_namespace()]) diff --git a/setup.cfg b/setup.cfg index 3eb8e8fa2..b90fa8cae 100644 --- a/setup.cfg +++ b/setup.cfg @@ -168,7 +168,6 @@ neutron.db.alembic_migrations = neutron.interface_drivers = ivs = neutron.agent.linux.interface:IVSInterfaceDriver linuxbridge = neutron.agent.linux.interface:BridgeInterfaceDriver - midonet = neutron.agent.linux.interface:MidonetInterfaceDriver null = neutron.agent.linux.interface:NullDriver openvswitch = neutron.agent.linux.interface:OVSInterfaceDriver -- 2.45.2