diff --git a/neutron/agent/linux/ovs_lib.py b/neutron/agent/linux/ovs_lib.py index 90be0c3b52a..a99a013ec36 100644 --- a/neutron/agent/linux/ovs_lib.py +++ b/neutron/agent/linux/ovs_lib.py @@ -462,7 +462,7 @@ class DeferredOVSBridge(object): This class is not thread-safe, that's why for every use a new instance must be implemented. ''' - ALLOWED_PASSTHROUGHS = 'add_port', 'delete_port' + ALLOWED_PASSTHROUGHS = 'add_port', 'add_tunnel_port', 'delete_port' def __init__(self, br, full_ordered=False, order=('add', 'mod', 'del')): diff --git a/neutron/tests/unit/agent/linux/test_ovs_lib.py b/neutron/tests/unit/agent/linux/test_ovs_lib.py index 6742a3b3bf9..04afdaf193b 100644 --- a/neutron/tests/unit/agent/linux/test_ovs_lib.py +++ b/neutron/tests/unit/agent/linux/test_ovs_lib.py @@ -880,6 +880,11 @@ class TestDeferredOVSBridge(base.BaseTestCase): self.del_flow_dict1 = dict(in_port=31) self.del_flow_dict2 = dict(in_port=32) + def test_right_allowed_passthroughs(self): + expected_passthroughs = ('add_port', 'add_tunnel_port', 'delete_port') + self.assertEqual(expected_passthroughs, + ovs_lib.DeferredOVSBridge.ALLOWED_PASSTHROUGHS) + def _verify_mock_call(self, expected_calls): self.mocked_do_action_flows.assert_has_calls(expected_calls) self.assertEqual(len(expected_calls),