Use plain routes list for server-migrations endpoint instead of stevedore
This patch adds server-migrations 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: Idd8bd0b500db85826ee730e91f9f7e3e5667044e
This commit is contained in:
parent
41f60f97fd
commit
5bef8ec79c
@ -59,6 +59,7 @@ from nova.api.openstack.compute import remote_consoles
|
||||
from nova.api.openstack.compute import rescue
|
||||
from nova.api.openstack.compute import security_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
|
||||
from nova.api.openstack.compute import server_tags
|
||||
from nova.api.openstack.compute import server_usage
|
||||
@ -218,6 +219,10 @@ server_metadata_controller = functools.partial(_create_controller,
|
||||
server_metadata.ServerMetadataController, [], [])
|
||||
|
||||
|
||||
server_migrations_controller = functools.partial(_create_controller,
|
||||
server_migrations.ServerMigrationsController, [], [])
|
||||
|
||||
|
||||
server_os_interface_controller = functools.partial(_create_controller,
|
||||
attach_interfaces.InterfaceAttachmentController, [], [])
|
||||
|
||||
@ -430,6 +435,16 @@ ROUTE_LIST = (
|
||||
'PUT': [server_metadata_controller, 'update'],
|
||||
'DELETE': [server_metadata_controller, 'delete'],
|
||||
}),
|
||||
('/servers/{server_id}/migrations', {
|
||||
'GET': [server_migrations_controller, 'index']
|
||||
}),
|
||||
('/servers/{server_id}/migrations/{id}', {
|
||||
'GET': [server_migrations_controller, 'show'],
|
||||
'DELETE': [server_migrations_controller, 'delete']
|
||||
}),
|
||||
('/servers/{server_id}/migrations/{id}/action', {
|
||||
'POST': [server_migrations_controller, 'action']
|
||||
}),
|
||||
('/servers/{server_id}/os-interface', {
|
||||
'GET': [server_os_interface_controller, 'index'],
|
||||
'POST': [server_os_interface_controller, 'create']
|
||||
|
@ -26,9 +26,6 @@ from nova.i18n import _
|
||||
from nova.policies import servers_migrations as sm_policies
|
||||
|
||||
|
||||
ALIAS = 'servers:migrations'
|
||||
|
||||
|
||||
def output(migration):
|
||||
"""Returns the desired output of the API from an object.
|
||||
|
||||
@ -153,22 +150,3 @@ class ServerMigrationsController(wsgi.Controller):
|
||||
raise exc.HTTPNotFound(explanation=e.format_message())
|
||||
except exception.InvalidMigrationState as e:
|
||||
raise exc.HTTPBadRequest(explanation=e.format_message())
|
||||
|
||||
|
||||
class ServerMigrations(extensions.V21APIExtensionBase):
|
||||
"""Server Migrations API."""
|
||||
name = "ServerMigrations"
|
||||
alias = 'server-migrations'
|
||||
version = 1
|
||||
|
||||
def get_resources(self):
|
||||
parent = {'member_name': 'server',
|
||||
'collection_name': 'servers'}
|
||||
member_actions = {'action': 'POST'}
|
||||
resources = [extensions.ResourceExtension(
|
||||
'migrations', ServerMigrationsController(),
|
||||
parent=parent, member_actions=member_actions)]
|
||||
return resources
|
||||
|
||||
def get_controller_extensions(self):
|
||||
return []
|
||||
|
@ -96,7 +96,6 @@ nova.api.v21.extensions =
|
||||
security_groups = nova.api.openstack.compute.security_groups:SecurityGroups
|
||||
server_diagnostics = nova.api.openstack.compute.server_diagnostics:ServerDiagnostics
|
||||
server_external_events = nova.api.openstack.compute.server_external_events:ServerExternalEvents
|
||||
server_migrations = nova.api.openstack.compute.server_migrations:ServerMigrations
|
||||
server_groups = nova.api.openstack.compute.server_groups:ServerGroups
|
||||
services = nova.api.openstack.compute.services:Services
|
||||
tenant_networks = nova.api.openstack.compute.tenant_networks:TenantNetworks
|
||||
|
Loading…
x
Reference in New Issue
Block a user