Use plain routes list for extension_info instead of stevedore
This patch adds extension_info related routes by a plain list, instead of using stevedore. After all the Nova API endpoints moves to the plain routes list, the usage of stevedore for API loading will be removed from Nova. Partial-implement-blueprint api-no-more-extensions-pike Change-Id: I07c5e0dc34042d4f3cea8b1b933b11a624ec9512
This commit is contained in:
parent
2b912ccbf1
commit
8acc357168
|
@ -21,7 +21,6 @@ from nova.api.openstack import wsgi
|
|||
from nova import exception
|
||||
from nova.policies import extensions as ext_policies
|
||||
|
||||
ALIAS = 'extensions'
|
||||
LOG = logging.getLogger(__name__)
|
||||
|
||||
|
||||
|
@ -896,24 +895,6 @@ class ExtensionInfoController(wsgi.Controller):
|
|||
raise webob.exc.HTTPNotFound()
|
||||
|
||||
|
||||
class ExtensionInfo(extensions.V21APIExtensionBase):
|
||||
"""Extension information."""
|
||||
|
||||
name = "Extensions"
|
||||
alias = ALIAS
|
||||
version = 1
|
||||
|
||||
def get_resources(self):
|
||||
resources = [
|
||||
extensions.ResourceExtension(
|
||||
ALIAS, ExtensionInfoController(self.extension_info),
|
||||
member_name='extension')]
|
||||
return resources
|
||||
|
||||
def get_controller_extensions(self):
|
||||
return []
|
||||
|
||||
|
||||
class LoadedExtensionInfo(object):
|
||||
"""Keep track of all loaded API extensions."""
|
||||
|
||||
|
|
|
@ -148,6 +148,10 @@ cloudpipe_controller = functools.partial(
|
|||
_create_controller, cloudpipe.CloudpipeController, [], [])
|
||||
|
||||
|
||||
extensions_controller = functools.partial(
|
||||
_create_controller, extension_info.ExtensionInfoController, [], [])
|
||||
|
||||
|
||||
fixed_ips_controller = functools.partial(_create_controller,
|
||||
fixed_ips.FixedIPController, [], [])
|
||||
|
||||
|
@ -396,6 +400,12 @@ volumes_controller = functools.partial(_create_controller,
|
|||
ROUTE_LIST = (
|
||||
# NOTE: '/os-volumes_boot' is a clone of '/servers'. We may want to
|
||||
# deprecate it in the future.
|
||||
('/extensions', {
|
||||
'GET': [extensions_controller, 'index'],
|
||||
}),
|
||||
('/extensions/{id}', {
|
||||
'GET': [extensions_controller, 'show'],
|
||||
}),
|
||||
('/flavors', {
|
||||
'GET': [flavor_controller, 'index'],
|
||||
'POST': [flavor_controller, 'create']
|
||||
|
|
|
@ -72,7 +72,6 @@ wsgi_scripts =
|
|||
nova-metadata-wsgi = nova.api.metadata.wsgi:init_application
|
||||
|
||||
nova.api.v21.extensions =
|
||||
extension_info = nova.api.openstack.compute.extension_info:ExtensionInfo
|
||||
versions = nova.api.openstack.compute.versionsV21:Versions
|
||||
|
||||
nova.api.v21.test_extensions =
|
||||
|
|
Loading…
Reference in New Issue