Use payload for ROUTER BEFORE_UPDATE event

Change-Id: I6e57d97335cdfd9242707524193aa6d8d5f93f88
Depends-On: https://review.opendev.org/c/openstack/neutron/+/803009
This commit is contained in:
elajkat 2021-08-03 13:31:54 +02:00
parent bd75769c8e
commit 8de26cbfcd
2 changed files with 8 additions and 5 deletions

View File

@ -731,9 +731,9 @@ def vpn_router_gateway_callback(resource, event, trigger, payload=None):
vpn_plugin.check_subnet_in_use(context, subnet_id, router_id)
def migration_callback(resource, event, trigger, **kwargs):
context = kwargs['context']
router = kwargs['router']
def migration_callback(resource, event, trigger, payload):
context = payload.context
router = payload.latest_state
vpn_plugin = directory.get_plugin(p_constants.VPN)
if vpn_plugin:
vpn_plugin.check_router_in_use(context, router['id'])

View File

@ -28,6 +28,7 @@ from neutron import extensions as nextensions
from neutron.scheduler import l3_agent_scheduler
from neutron.tests.unit.db import test_db_base_plugin_v2 as test_db_plugin
from neutron.tests.unit.extensions import test_l3 as test_l3_plugin
from neutron_lib.callbacks import events
from neutron_lib import constants as lib_constants
from neutron_lib import context
from neutron_lib.exceptions import l3 as l3_exception
@ -1700,9 +1701,11 @@ class TestVpnaas(VPNPluginDbTestCase):
def test_check_router_has_no_vpn(self):
vpn_plugin = mock.Mock()
directory.add_plugin('VPN', vpn_plugin)
kwargs = {'context': mock.ANY, 'router': {'id': 'foo_id'}}
payload = events.DBEventPayload(
context=mock.ANY,
states=({'id': 'foo_id'},))
self.assertTrue(vpn_db.migration_callback(
mock.ANY, mock.ANY, mock.ANY, **kwargs))
mock.ANY, mock.ANY, mock.ANY, payload))
vpn_plugin.check_router_in_use.assert_called_once_with(
mock.ANY, 'foo_id')