** Also affects: networking-bigswitch Importance: Undecided Status: New
-- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1805235 Title: [neutron-tempest-plugin] delete_router calls remove_router_extra_routes even when extra_routes extension is disabled Status in networking-bigswitch: New Status in neutron: New Bug description: A recent change [1] to neutron-tempest-plugin is causing a tempest failure when running against networking-bigswitch neutron plugin with L3 functionality provided by networking-bigswitch. The failure stack trace looks as follows: 17:12:37 tearDownClass (neutron_tempest_plugin.scenario.admin.test_floatingip.FloatingIpTestCasesAdmin) 17:12:37 ---------------------------------------------------------------------------------------------- 17:12:37 17:12:37 Captured traceback: 17:12:37 ~~~~~~~~~~~~~~~~~~~ 17:12:37 Traceback (most recent call last): 17:12:37 File "tempest/test.py", line 224, in tearDownClass 17:12:37 six.reraise(etype, value, trace) 17:12:37 File "tempest/test.py", line 196, in tearDownClass 17:12:37 teardown() 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/scenario/admin/test_floatingip.py", line 56, in resource_cleanup 17:12:37 super(FloatingIpTestCasesAdmin, cls).resource_cleanup() 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/base.py", line 149, in resource_cleanup 17:12:37 router) 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/base.py", line 260, in _try_delete_resource 17:12:37 delete_callable(*args, **kwargs) 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/api/base.py", line 679, in delete_router 17:12:37 client.remove_router_extra_routes(router['id']) 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/services/network/json/network_client.py", line 452, in remove_router_extra_routes 17:12:37 self.update_router(router_id, routes=None) 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/services/network/json/network_client.py", line 394, in update_router 17:12:37 return self._update_router(router_id, set_enable_snat=False, **kwargs) 17:12:37 File "/opt/stack/neutron-tempest-plugin/neutron_tempest_plugin/services/network/json/network_client.py", line 382, in _update_router 17:12:37 resp, body = self.put(uri, update_body) 17:12:37 File "tempest/lib/common/rest_client.py", line 344, in put 17:12:37 return self.request('PUT', url, extra_headers, headers, body, chunked) 17:12:37 File "tempest/lib/common/rest_client.py", line 676, in request 17:12:37 self._error_checker(resp, resp_body) 17:12:37 File "tempest/lib/common/rest_client.py", line 787, in _error_checker 17:12:37 raise exceptions.BadRequest(resp_body, resp=resp) 17:12:37 tempest.lib.exceptions.BadRequest: Bad request 17:12:37 Details: {u'type': u'HTTPBadRequest', u'detail': u'', u'message': u"Unrecognized attribute(s) 'routes'"} 17:12:37 Failure is not during actual test, but rather during tearDown of the test. Further inspection points to this line [2] being added to delete_router method of the base class. Typically there is an 'if routes in kwargs' or 'if extra_routes extension enabled' sort of check, before calling the extra_route related add/delete methods. Not sure if this was intentional and extra_routes is now a mandatory extension. Please correct me if I'm wrong and I can update the neutron plugin to handle it correctly. Steps to Reproduce: - install devstack with a third party neutron L3 plugin enabled - ensure that this plugin does not support extra_routes extension - run tempest with neutron-tempest-plugin enabled and enabling only floating_ip tests (to trigger L3 methods) Probable change-id that can provide more info about why the remove was added and if it needs change: Ie9903b7078d6fcff307c5d76770d92df1152d473 [1] https://github.com/openstack/neutron-tempest-plugin/commit/b1a3289fe4b98d1270844aa81f60604e64ae50cf [2] https://github.com/openstack/neutron-tempest-plugin/blob/b1a3289fe4b98d1270844aa81f60604e64ae50cf/neutron_tempest_plugin/api/base.py#L673 To manage notifications about this bug go to: https://bugs.launchpad.net/networking-bigswitch/+bug/1805235/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp