Merge "Notify port_update to agent for status change"
This commit is contained in:
commit
c0fe9e34a1
|
@ -1409,6 +1409,8 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2,
|
||||||
|
|
||||||
if original_port['admin_state_up'] != updated_port['admin_state_up']:
|
if original_port['admin_state_up'] != updated_port['admin_state_up']:
|
||||||
need_port_update_notify = True
|
need_port_update_notify = True
|
||||||
|
if original_port['status'] != updated_port['status']:
|
||||||
|
need_port_update_notify = True
|
||||||
# NOTE: In the case of DVR ports, the port-binding is done after
|
# NOTE: In the case of DVR ports, the port-binding is done after
|
||||||
# router scheduling when sync_routers is called and so this call
|
# router scheduling when sync_routers is called and so this call
|
||||||
# below may not be required for DVR routed interfaces. But still
|
# below may not be required for DVR routed interfaces. But still
|
||||||
|
|
|
@ -806,6 +806,16 @@ class TestMl2PortsV2(test_plugin.TestPortsV2, Ml2PluginV2TestCase):
|
||||||
self.assertEqual('DOWN', port['port']['status'])
|
self.assertEqual('DOWN', port['port']['status'])
|
||||||
self.assertEqual('DOWN', self.port_create_status)
|
self.assertEqual('DOWN', self.port_create_status)
|
||||||
|
|
||||||
|
def test_notify_port_updated_for_status_change(self):
|
||||||
|
ctx = context.get_admin_context()
|
||||||
|
plugin = directory.get_plugin()
|
||||||
|
with self.port() as port:
|
||||||
|
with mock.patch.object(self.plugin,
|
||||||
|
'_notify_port_updated') as notify_mock:
|
||||||
|
port['port']['status'] = constants.PORT_STATUS_ACTIVE
|
||||||
|
plugin.update_port(ctx, port['port']['id'], port)
|
||||||
|
self.assertTrue(notify_mock.called)
|
||||||
|
|
||||||
def test_update_port_status_short_id(self):
|
def test_update_port_status_short_id(self):
|
||||||
ctx = context.get_admin_context()
|
ctx = context.get_admin_context()
|
||||||
plugin = directory.get_plugin()
|
plugin = directory.get_plugin()
|
||||||
|
|
Loading…
Reference in New Issue