Use plain routes list for os-server-groups endpoint instead of stevedore

This patch adds os-server-groups 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: I2df31cc04fbd2d54103a412f461cfd665209dfa7
This commit is contained in:
Kevin_Zheng
2017-05-03 22:17:40 +08:00
committed by Stephen Finucane
parent 7626b8c6aa
commit b15041e81c
3 changed files with 13 additions and 19 deletions
+13
View File
@@ -67,6 +67,7 @@ from nova.api.openstack.compute import rescue
from nova.api.openstack.compute import security_groups
from nova.api.openstack.compute import server_diagnostics
from nova.api.openstack.compute import server_external_events
from nova.api.openstack.compute import server_groups
from nova.api.openstack.compute import server_metadata
from nova.api.openstack.compute import server_migrations
from nova.api.openstack.compute import server_password
@@ -262,6 +263,10 @@ server_external_events_controller = functools.partial(_create_controller,
server_external_events.ServerExternalEventsController, [], [])
server_groups_controller = functools.partial(_create_controller,
server_groups.ServerGroupController, [], [])
server_metadata_controller = functools.partial(_create_controller,
server_metadata.ServerMetadataController, [], [])
@@ -493,6 +498,14 @@ ROUTE_LIST = (
('/os-server-external-events', {
'POST': [server_external_events_controller, 'create']
}),
('/os-server-groups', {
'GET': [server_groups_controller, 'index'],
'POST': [server_groups_controller, 'create']
}),
('/os-server-groups/{id}', {
'GET': [server_groups_controller, 'show'],
'DELETE': [server_groups_controller, 'delete']
}),
('/os-services', {
'GET': [services_controller, 'index']
}),
@@ -36,8 +36,6 @@ from nova.policies import server_groups as sg_policies
LOG = logging.getLogger(__name__)
ALIAS = "os-server-groups"
CONF = nova.conf.CONF
@@ -188,19 +186,3 @@ class ServerGroupController(wsgi.Controller):
raise exc.HTTPForbidden(explanation=msg)
return {'server_group': self._format_server_group(context, sg, req)}
class ServerGroups(extensions.V21APIExtensionBase):
"""Server group support."""
name = "ServerGroups"
alias = ALIAS
version = 1
def get_resources(self):
res = extensions.ResourceExtension(
ALIAS, controller=ServerGroupController(),
member_actions={"action": "POST", })
return [res]
def get_controller_extensions(self):
return []
-1
View File
@@ -86,7 +86,6 @@ nova.api.v21.extensions =
remote_consoles = nova.api.openstack.compute.remote_consoles:RemoteConsoles
security_group_default_rules = nova.api.openstack.compute.security_group_default_rules:SecurityGroupDefaultRules
security_groups = nova.api.openstack.compute.security_groups:SecurityGroups
server_groups = nova.api.openstack.compute.server_groups:ServerGroups
tenant_networks = nova.api.openstack.compute.tenant_networks:TenantNetworks
versions = nova.api.openstack.compute.versionsV21:Versions
volumes = nova.api.openstack.compute.volumes:Volumes