diff --git a/neutron/agent/linux/dhcp.py b/neutron/agent/linux/dhcp.py index 36bce4ee2e9..aba75af5716 100644 --- a/neutron/agent/linux/dhcp.py +++ b/neutron/agent/linux/dhcp.py @@ -198,10 +198,10 @@ class DhcpLocalProcess(DhcpBase): def enable(self): """Enables DHCP for this network by spawning a local process.""" - interface_name = self.device_manager.setup(self.network) if self.active: self.restart() elif self._enable_dhcp(): + interface_name = self.device_manager.setup(self.network) self.interface_name = interface_name self.spawn_process() diff --git a/neutron/tests/unit/test_linux_dhcp.py b/neutron/tests/unit/test_linux_dhcp.py index d06a7139e2a..f6f5fc6a23a 100644 --- a/neutron/tests/unit/test_linux_dhcp.py +++ b/neutron/tests/unit/test_linux_dhcp.py @@ -583,6 +583,7 @@ class TestDhcpLocalProcess(TestBase): lp.enable() self.assertEqual(lp.called, ['restart']) + self.assertFalse(self.mock_mgr.return_value.setup.called) def test_enable(self): attrs_to_mock = dict(