]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Don't pass namespace name in disable_isolated_metadata_proxy
authorOleg Bondarev <obondarev@mirantis.com>
Thu, 14 May 2015 12:03:54 +0000 (15:03 +0300)
committerOleg Bondarev <obondarev@mirantis.com>
Thu, 14 May 2015 14:43:28 +0000 (17:43 +0300)
It's not always possible/convenient to get namespace name
when need to disable some process (like metadata process for stale
router, see related bug). Since namespace name is not required
for process manager to disable process we can remove this parameter
from disable_isolated_metadata_proxy()

Change-Id: I0e0da01d9640aa9920f41989804fc6f320c1c1eb
Related-Bug: #1455042

neutron/agent/dhcp/agent.py
neutron/agent/l3/ha.py
neutron/agent/metadata/driver.py
neutron/tests/unit/agent/dhcp/test_agent.py
neutron/tests/unit/agent/l3/test_agent.py

index 1942fc6526265e86be93ff2de5ebd0b5309e5919..89fd0773ed51c385721993925c806e8ed9cbe0fc 100644 (file)
@@ -379,7 +379,7 @@ class DhcpAgent(manager.Manager):
 
     def disable_isolated_metadata_proxy(self, network):
         metadata_driver.MetadataDriver.destroy_monitored_metadata_proxy(
-            self._process_monitor, network.id, network.namespace, self.conf)
+            self._process_monitor, network.id, self.conf)
 
 
 class DhcpPluginApi(object):
index ffe6a82c54a61ed92cdb645cccad6d554400df2e..95f3fd7635501a4df3933c8f0e982e1acc570f72 100644 (file)
@@ -134,7 +134,7 @@ class AgentMixin(object):
         else:
             LOG.debug('Closing metadata proxy for router %s', router_id)
             self.metadata_driver.destroy_monitored_metadata_proxy(
-                self.process_monitor, ri.router_id, ri.ns_name, self.conf)
+                self.process_monitor, ri.router_id, self.conf)
 
     def _update_radvd_daemon(self, ri, state):
         # Radvd has to be spawned only on the Master HA Router. If there are
index 437e5efe0b2625059c179ae21fcfa72783564744..94e2a309240d74fa0981d6068597ad5c7d820149 100644 (file)
@@ -116,19 +116,21 @@ class MetadataDriver(object):
         uuid = network_id or router_id
         callback = cls._get_metadata_proxy_callback(
             port, conf, network_id=network_id, router_id=router_id)
-        pm = cls._get_metadata_proxy_process_manager(uuid, ns_name, conf,
+        pm = cls._get_metadata_proxy_process_manager(uuid, conf,
+                                                     ns_name=ns_name,
                                                      callback=callback)
         pm.enable()
         monitor.register(uuid, METADATA_SERVICE_NAME, pm)
 
     @classmethod
-    def destroy_monitored_metadata_proxy(cls, monitor, uuid, ns_name, conf):
+    def destroy_monitored_metadata_proxy(cls, monitor, uuid, conf):
         monitor.unregister(uuid, METADATA_SERVICE_NAME)
-        pm = cls._get_metadata_proxy_process_manager(uuid, ns_name, conf)
+        # No need to pass ns name as it's not needed for disable()
+        pm = cls._get_metadata_proxy_process_manager(uuid, conf)
         pm.disable()
 
     @classmethod
-    def _get_metadata_proxy_process_manager(cls, router_id, ns_name, conf,
+    def _get_metadata_proxy_process_manager(cls, router_id, conf, ns_name=None,
                                             callback=None):
         return external_process.ProcessManager(
             conf=conf,
@@ -172,5 +174,4 @@ def before_router_removed(resource, event, l3_agent, **kwargs):
 
     proxy.destroy_monitored_metadata_proxy(l3_agent.process_monitor,
                                           router.router['id'],
-                                          router.ns_name,
                                           l3_agent.conf)
index 2dcda88f662071cd1274740e17275a7edf9d5615..6ea10afefd5e122bb74b4559598ffab2381cda8a 100644 (file)
@@ -567,10 +567,10 @@ class TestDhcpAgentEventHandler(base.BaseTestCase):
         )
         self.external_process = self.external_process_p.start()
 
-    def _process_manager_constructor_call(self):
+    def _process_manager_constructor_call(self, ns=FAKE_NETWORK_DHCP_NS):
         return mock.call(conf=cfg.CONF,
                          uuid=FAKE_NETWORK_UUID,
-                         namespace=FAKE_NETWORK_DHCP_NS,
+                         namespace=ns,
                          default_cmd_callback=mock.ANY)
 
     def _enable_dhcp_helper(self, network, enable_isolated_metadata=False,
@@ -709,7 +709,7 @@ class TestDhcpAgentEventHandler(base.BaseTestCase):
         self.call_driver.assert_called_once_with('disable', fake_network)
         if isolated_metadata:
             self.external_process.assert_has_calls([
-                self._process_manager_constructor_call(),
+                self._process_manager_constructor_call(ns=None),
                 mock.call().disable()])
         else:
             self.assertFalse(self.external_process.call_count)
@@ -741,7 +741,7 @@ class TestDhcpAgentEventHandler(base.BaseTestCase):
             [mock.call.get_network_by_id(fake_network.id)])
         if isolated_metadata:
             self.external_process.assert_has_calls([
-                self._process_manager_constructor_call(),
+                self._process_manager_constructor_call(ns=None),
                 mock.call().disable()
             ])
         else:
@@ -768,7 +768,6 @@ class TestDhcpAgentEventHandler(base.BaseTestCase):
             self.dhcp.disable_isolated_metadata_proxy(fake_network)
             destroy.assert_called_once_with(self.dhcp._process_monitor,
                                             fake_network.id,
-                                            fake_network.namespace,
                                             cfg.CONF)
 
     def _test_metadata_network(self, network):
index d27d017849b8a206203a93c55de16af31e8cf995..5f0852b2e88ede5c9b2b716fa97da605263815ae 100644 (file)
@@ -1974,7 +1974,6 @@ class TestBasicRouterOperations(BasicRouterOperationsFramework):
                 if enableflag:
                     destroy_proxy.assert_called_with(mock.ANY,
                                                      router_id,
-                                                     mock.ANY,
                                                      mock.ANY)
                 else:
                     self.assertFalse(destroy_proxy.call_count)