]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
DVR: Rename dvr_update_router_addvm function
authorSwaminathan Vasudevan <swaminathan.vasudevan@hp.com>
Fri, 4 Dec 2015 21:33:15 +0000 (13:33 -0800)
committerArmando Migliaccio <armamig@gmail.com>
Tue, 5 Jan 2016 04:45:54 +0000 (04:45 +0000)
Since dvr routers have to be scheduled and updated for
all dvr service ports other than vms, it is better to
rename the function appropriately.

Change-Id: I4e3d58bb9a01798cc808ac1e77584153a29a89e3

neutron/db/l3_dvrscheduler_db.py
neutron/tests/unit/scheduler/test_l3_agent_scheduler.py

index 8dd7ddd6ea17f8198c860a71a5db44e70a5b4104..f921bd3ec837e19ea19d5be06cd6d3202ba6d051 100644 (file)
@@ -99,7 +99,13 @@ class L3_DVRsch_db_mixin(l3agent_sch_db.L3AgentSchedulerDbMixin):
     the state of the router and the Compute Nodes.
     """
 
-    def dvr_update_router_addvm(self, context, port):
+    def dvr_handle_new_service_port(self, context, port):
+        """Handle new dvr service port creation.
+
+        When a new dvr service port is created, this function will
+        schedule a dvr router to new compute node if needed and notify
+        l3 agent on that node.
+        """
         port_host = port[portbindings.HOST_ID]
         l3_agent_on_host = (self.get_l3_agents(
             context, filters={'host': [port_host]}) or [None])[0]
@@ -113,7 +119,7 @@ class L3_DVRsch_db_mixin(l3agent_sch_db.L3AgentSchedulerDbMixin):
                     context, router_id, l3_agent_on_host['id']):
                 self.schedule_router(
                     context, router_id, candidates=[l3_agent_on_host])
-            LOG.debug('DVR: dvr_update_router_addvm %s ', router_id)
+            LOG.debug('DVR: Handle new service_port on router: %s', router_id)
 
         self.l3_rpc_notifier.routers_updated_on_host(
             context, router_ids, port_host)
@@ -152,7 +158,7 @@ class L3_DVRsch_db_mixin(l3agent_sch_db.L3AgentSchedulerDbMixin):
 
     def check_ports_on_host_and_subnet(self, context, host,
                                        port_id, subnet_id):
-        """Check if there is any dvr serviceable port on the subnet_id."""
+        """Check if there are any dvr service ports on the subnet_id."""
         filter_sub = {'fixed_ips': {'subnet_id': [subnet_id]}}
         ports = self._core_plugin.get_ports(context, filters=filter_sub)
         for port in ports:
@@ -466,7 +472,7 @@ def _notify_l3_agent_new_port(resource, event, trigger, **kwargs):
         l3plugin = manager.NeutronManager.get_service_plugins().get(
             service_constants.L3_ROUTER_NAT)
         context = kwargs['context']
-        l3plugin.dvr_update_router_addvm(context, port)
+        l3plugin.dvr_handle_new_service_port(context, port)
         l3plugin.dvr_vmarp_table_update(context, port, "add")
 
 
@@ -520,7 +526,7 @@ def _notify_l3_agent_port_update(resource, event, trigger, **kwargs):
                 new_port[portbindings.HOST_ID]))
         if (is_new_port_binding_changed and
             n_utils.is_dvr_serviced(new_device_owner)):
-            l3plugin.dvr_update_router_addvm(context, new_port)
+            l3plugin.dvr_handle_new_service_port(context, new_port)
             l3plugin.dvr_vmarp_table_update(context, new_port, "add")
         elif kwargs.get('mac_address_updated'):
             l3plugin.dvr_vmarp_table_update(context, new_port, "add")
index 243d6361e574128e668414e1d0562278d0e9bea2..630a353f47af23247b27038e76b7d58a5b26e899 100644 (file)
@@ -971,7 +971,8 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
             l3_dvrscheduler_db._notify_l3_agent_port_update(
                 'port', 'after_update', plugin, **kwargs)
             self.assertFalse(l3plugin.dvr_vmarp_table_update.called)
-            self.assertFalse(l3plugin.dvr_update_router_addvm.called)
+            self.assertFalse(
+                l3plugin.dvr_handle_new_service_port.called)
             self.assertFalse(l3plugin.remove_router_from_l3_agent.called)
             self.assertFalse(l3plugin.dvr_deletens_if_no_port.called)
 
@@ -991,7 +992,7 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
                 'port', 'after_create', mock.ANY, **kwargs)
             l3plugin.dvr_vmarp_table_update.assert_called_once_with(
                 self.adminContext, kwargs.get('port'), 'add')
-            l3plugin.dvr_update_router_addvm.assert_called_once_with(
+            l3plugin.dvr_handle_new_service_port.assert_called_once_with(
                 self.adminContext, kwargs.get('port'))
 
     def test__notify_l3_agent_new_port_no_action(self):
@@ -1009,7 +1010,8 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
             l3_dvrscheduler_db._notify_l3_agent_new_port(
                 'port', 'after_create', mock.ANY, **kwargs)
             self.assertFalse(l3plugin.dvr_vmarp_table_update.called)
-            self.assertFalse(l3plugin.dvr_update_router_addvm.called)
+            self.assertFalse(
+                l3plugin.dvr_handle_new_service_port.called)
 
     def test__notify_l3_agent_update_port_no_action(self):
         kwargs = {
@@ -1031,7 +1033,8 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
                 'port', 'after_update', mock.ANY, **kwargs)
 
             self.assertFalse(l3plugin.dvr_vmarp_table_update.called)
-            self.assertFalse(l3plugin.dvr_update_router_addvm.called)
+            self.assertFalse(
+                l3plugin.dvr_handle_new_service_port.called)
             self.assertFalse(l3plugin.remove_router_from_l3_agent.called)
             self.assertFalse(l3plugin.dvr_deletens_if_no_port.called)
 
@@ -1057,7 +1060,7 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
 
             l3plugin.dvr_vmarp_table_update.assert_called_once_with(
                 self.adminContext, kwargs.get('port'), 'add')
-            self.assertFalse(l3plugin.dvr_update_router_addvm.called)
+            self.assertFalse(l3plugin.dvr_handle_new_service_port.called)
 
     def test__notify_l3_agent_update_port_with_port_binding_change(self):
         kwargs = {
@@ -1084,7 +1087,7 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
             l3plugin.remove_router_from_l3_agent.assert_called_once_with(
                 self.adminContext, 'foo_agent', 'foo_id')
             self.assertEqual(2, l3plugin.dvr_vmarp_table_update.call_count)
-            l3plugin.dvr_update_router_addvm.assert_called_once_with(
+            l3plugin.dvr_handle_new_service_port.assert_called_once_with(
                 self.adminContext, kwargs.get('port'))
 
     def test__notify_l3_agent_update_port_removing_routers(self):
@@ -1125,7 +1128,8 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
             l3plugin.dvr_vmarp_table_update.assert_called_once_with(
                 self.adminContext, mock.ANY, 'del')
 
-            self.assertFalse(l3plugin.dvr_update_router_addvm.called)
+            self.assertFalse(
+                l3plugin.dvr_handle_new_service_port.called)
             l3plugin.remove_router_from_l3_agent.assert_called_once_with(
                 self.adminContext, 'foo_agent', 'foo_id')
 
@@ -1153,7 +1157,7 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
             l3plugin.remove_router_from_l3_agent.assert_called_once_with(
                 self.adminContext, 'foo_agent', 'foo_id')
 
-    def test_dvr_update_router_addvm(self):
+    def test_dvr_handle_new_service_port(self):
         port = {
                 'id': 'port1',
                 'device_id': 'abcd',
@@ -1200,7 +1204,8 @@ class L3DvrSchedulerTestCase(testlib_api.SqlTestCase):
                 mock.patch.object(
                         self.dut, 'get_l3_agents',
                         return_value=[agent_on_host]) as get_l3_agents:
-            self.dut.dvr_update_router_addvm(self.adminContext, port)
+            self.dut.dvr_handle_new_service_port(
+                self.adminContext, port)
 
             get_l3_agents.assert_called_once_with(
                 self.adminContext,