From: Ihar Hrachyshka Date: Thu, 6 Aug 2015 14:50:37 +0000 (+0200) Subject: Revert "Add extension callbacks support for networks" X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=23ef0da0fbc335d962bf1e0a4ec60c34394c2782;p=openstack-build%2Fneutron-build.git Revert "Add extension callbacks support for networks" This reverts commit 3de65f57e30b73f5d7efc0344a102f1e40a6b40e. We don't rely on neutron.callbacks anymore to extend core resources, so the patch is out of scope for feature/qos. Change-Id: If611149be19c5c159fc7bd0a4ba2829c11735d52 Partially-Implements: blueprint quantum-qos-api --- diff --git a/neutron/callbacks/resources.py b/neutron/callbacks/resources.py index 40f73a653..d796faf49 100644 --- a/neutron/callbacks/resources.py +++ b/neutron/callbacks/resources.py @@ -10,7 +10,6 @@ # License for the specific language governing permissions and limitations # under the License. -NETWORK = 'network' PORT = 'port' ROUTER = 'router' ROUTER_GATEWAY = 'router_gateway' @@ -20,7 +19,6 @@ SECURITY_GROUP_RULE = 'security_group_rule' SUBNET = 'subnet' VALID = ( - NETWORK, PORT, ROUTER, ROUTER_GATEWAY, diff --git a/neutron/plugins/ml2/plugin.py b/neutron/plugins/ml2/plugin.py index 55addebe1..f70de86f5 100644 --- a/neutron/plugins/ml2/plugin.py +++ b/neutron/plugins/ml2/plugin.py @@ -630,8 +630,6 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2, def create_network(self, context, network): result, mech_context = self._create_network_with_retries(context, network) - self._notify_registry( - resources.NETWORK, events.AFTER_CREATE, context, result) try: self.mechanism_manager.create_network_postcommit(mech_context) except ml2_exc.MechanismDriverError: @@ -644,12 +642,6 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2, def create_network_bulk(self, context, networks): objects = self._create_bulk_ml2(attributes.NETWORK, context, networks) - - for obj in objects: - self._notify_registry(resources.NETWORK, - events.AFTER_CREATE, - context, - obj) return [obj['result'] for obj in objects] def update_network(self, context, id, network): @@ -672,10 +664,6 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2, original_network=original_network) self.mechanism_manager.update_network_precommit(mech_context) - # Notifications must be sent after the above transaction is complete - self._notify_registry( - resources.NETWORK, events.AFTER_UPDATE, context, updated_network) - # TODO(apech) - handle errors raised by update_network, potentially # by re-calling update_network with the previous attributes. For # now the error is propogated to the caller, which is expected to @@ -1544,10 +1532,3 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2, if port: return port.id return device - - def _notify_registry(self, resource_type, event_type, context, resource): - kwargs = { - 'context': context, - resource_type: resource, - } - registry.notify(resource_type, event_type, self, **kwargs) diff --git a/neutron/tests/unit/plugins/ml2/test_plugin.py b/neutron/tests/unit/plugins/ml2/test_plugin.py index 948a27b64..8e4c344e5 100644 --- a/neutron/tests/unit/plugins/ml2/test_plugin.py +++ b/neutron/tests/unit/plugins/ml2/test_plugin.py @@ -1662,75 +1662,3 @@ class TestMl2PluginCreateUpdateDeletePort(base.BaseTestCase): # run the transaction balancing function defined in this test plugin.delete_port(self.context, 'fake_id') self.assertTrue(self.notify.call_count) - - -class TestMl2PluginCreateUpdateNetwork(base.BaseTestCase): - def setUp(self): - super(TestMl2PluginCreateUpdateNetwork, self).setUp() - self.context = mock.MagicMock() - self.notify_p = mock.patch('neutron.callbacks.registry.notify') - self.notify = self.notify_p.start() - - def _ensure_transaction_is_closed(self): - transaction = self.context.session.begin(subtransactions=True) - enter = transaction.__enter__.call_count - exit = transaction.__exit__.call_count - self.assertEqual(enter, exit) - - def _create_plugin_for_create_update_network(self): - plugin = ml2_plugin.Ml2Plugin() - plugin.extension_manager = mock.Mock() - plugin.type_manager = mock.Mock() - plugin.mechanism_manager = mock.Mock() - plugin.notifier = mock.Mock() - mock.patch('neutron.extensions.providernet.' - '_raise_if_updates_provider_attributes').start() - - self.notify.side_effect = ( - lambda r, e, t, **kwargs: self._ensure_transaction_is_closed()) - - return plugin - - def test_create_network_rpc_outside_transaction(self): - with mock.patch.object(ml2_plugin.Ml2Plugin, '__init__') as init,\ - mock.patch.object(base_plugin.NeutronDbPluginV2, - 'create_network'): - init.return_value = None - - plugin = self._create_plugin_for_create_update_network() - - plugin.create_network(self.context, mock.MagicMock()) - - kwargs = {'context': self.context, 'network': mock.ANY} - self.notify.assert_called_once_with('network', 'after_create', - plugin, **kwargs) - - def test_create_network_bulk_rpc_outside_transaction(self): - with mock.patch.object(ml2_plugin.Ml2Plugin, '__init__') as init,\ - mock.patch.object(base_plugin.NeutronDbPluginV2, - 'create_network'): - init.return_value = None - - plugin = self._create_plugin_for_create_update_network() - - plugin.create_network_bulk(self.context, - {'networks': - [mock.MagicMock(), mock.MagicMock()]}) - - self.assertEqual(2, self.notify.call_count) - - def test_update_network_rpc_outside_transaction(self): - with mock.patch.object(ml2_plugin.Ml2Plugin, '__init__') as init,\ - mock.patch.object(base_plugin.NeutronDbPluginV2, - 'update_network'): - init.return_value = None - plugin = self._create_plugin_for_create_update_network() - - plugin.update_network(self.context, 'fake_id', mock.MagicMock()) - - kwargs = { - 'context': self.context, - 'network': mock.ANY, - } - self.notify.assert_called_once_with('network', 'after_update', - plugin, **kwargs)