Reviewed: https://review.openstack.org/351959 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=720a8b3ff011d5f765335e180af0a11bda1f7aa8 Submitter: Jenkins Branch: master
commit 720a8b3ff011d5f765335e180af0a11bda1f7aa8 Author: Armando Migliaccio <[email protected]> Date: Fri Aug 5 16:46:36 2016 -0700 Broken extensions should not show up in the extension list This patch ensures that invalid extensions are not exposed to the user and thus allow clients that rely on them to fail fast rather than unexpectedly. Closes-bug: #1547678 Change-Id: Iaace8a9e41562cb16b8c4b475eea01956eb6aab7 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1547678 Title: Broken extensions should not show up in the extension list Status in neutron: Fix Released Bug description: As part of [1] and [2], support was added to load service plugins at start-up. Specifically [1] added the 'auto-allocated-topology' (aka 'get me a network') as a default service plugin for neutron. However, this auto-allocated-topology when loaded as a default service plugin does not appear to extend the network resource it defines [3]; adding a 'is_default' attribute to networks. Therefore there's currently no way to set a network as default: --- neutron --debug net-create default-ext-net --router:external=True --is-default True ... DEBUG: keystoneauth.session REQ: curl -g -i -X POST http://10.34.232.114:9696/v2.0/networks.json -H "User-Agent: python-neutronclient" -H "Content-Type: application/json" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}8020291c3aa0de969eddc411f24d1cc47749e3af" -d '{"network": {"is_default": "True", "router:external": "True", "name": "default-ext-net", "admin_state_up": true}}' DEBUG: keystoneauth.session RESP: [400] Date: Fri, 19 Feb 2016 21:35:26 GMT Connection: keep-alive Content-Type: application/json; charset=UTF-8 Content-Length: 111 X-Openstack-Request-Id: req-f4cf54a0-a0d0-4d8d-88d5-a050f897678e RESP BODY: {"NeutronError": {"message": "Unrecognized attribute(s) 'is_default'", "type": "HTTPBadRequest", "detail": ""}} DEBUG: neutronclient.v2_0.client Error message: {"NeutronError": {"message": "Unrecognized attribute(s) 'is_default'", "type": "HTTPBadRequest", "detail": ""}} ERROR: neutronclient.shell Unrecognized attribute(s) 'is_default' ... --- Note -- that from my logs I can see the extension being loaded: 2016-02-19 13:08:41.848 8202 DEBUG neutron.manager [-] Successfully loaded auto-allocated-topology plugin. Description: Auto Allocated Topology - aka get me a network. _load_service_plugins /opt/stack/neutron/neutron/manager.py:207 Perhaps the extension manager extend_resources() is not called in the call-flow of loading default service plugins? [1] https://review.openstack.org/#/c/273439/10 [2] https://bugs.launchpad.net/neutron/+bug/1544383 [3] https://github.com/openstack/neutron/blob/master/neutron/extensions/auto_allocated_topology.py#L36 To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1547678/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

