Merge "Use plain routes list for os-availability-zone endpoint instead of stevedore"
This commit is contained in:
@@ -22,7 +22,6 @@ from nova.policies import availability_zone as az_policies
|
||||
from nova import servicegroup
|
||||
|
||||
CONF = nova.conf.CONF
|
||||
ALIAS = "os-availability-zone"
|
||||
ATTRIBUTE_NAME = "availability_zone"
|
||||
|
||||
|
||||
@@ -121,28 +120,6 @@ class AvailabilityZoneController(wsgi.Controller):
|
||||
return self._describe_availability_zones_verbose(context)
|
||||
|
||||
|
||||
class AvailabilityZone(extensions.V21APIExtensionBase):
|
||||
"""1. Add availability_zone to the Create Server API.
|
||||
2. Add availability zones describing.
|
||||
"""
|
||||
|
||||
name = "AvailabilityZone"
|
||||
alias = ALIAS
|
||||
version = 1
|
||||
|
||||
def get_resources(self):
|
||||
resource = [extensions.ResourceExtension(ALIAS,
|
||||
AvailabilityZoneController(),
|
||||
collection_actions={'detail': 'GET'})]
|
||||
return resource
|
||||
|
||||
def get_controller_extensions(self):
|
||||
"""It's an abstract function V21APIExtensionBase and the extension
|
||||
will not be loaded without it.
|
||||
"""
|
||||
return []
|
||||
|
||||
|
||||
# NOTE(gmann): This function is not supposed to use 'body_deprecated_param'
|
||||
# parameter as this is placed to handle scheduler_hint extension for V2.1.
|
||||
def server_create(server_dict, create_kwargs, body_deprecated_param):
|
||||
|
||||
@@ -181,6 +181,11 @@ hardcoded_extensions = [
|
||||
'alias': 'os-assisted-volume-snapshots',
|
||||
'description': 'Assisted volume snapshots.'
|
||||
},
|
||||
{'name': 'AvailabilityZone',
|
||||
'alias': 'os-availability-zone',
|
||||
'description': '1. Add availability_zone to the Create Server API.\n'
|
||||
' 2. Add availability zones describing.\n ',
|
||||
},
|
||||
{'name': 'DiskConfig',
|
||||
'alias': 'os-disk-config',
|
||||
'description': 'Disk Management Extension.'},
|
||||
|
||||
@@ -22,6 +22,7 @@ from nova.api.openstack.compute import admin_password
|
||||
from nova.api.openstack.compute import agents
|
||||
from nova.api.openstack.compute import aggregates
|
||||
from nova.api.openstack.compute import assisted_volume_snapshots
|
||||
from nova.api.openstack.compute import availability_zone
|
||||
from nova.api.openstack.compute import config_drive
|
||||
from nova.api.openstack.compute import console_output
|
||||
from nova.api.openstack.compute import create_backup
|
||||
@@ -91,6 +92,10 @@ assisted_volume_snapshots_controller = functools.partial(
|
||||
assisted_volume_snapshots.AssistedVolumeSnapshotsController, [], [])
|
||||
|
||||
|
||||
availability_zone_controller = functools.partial(
|
||||
_create_controller, availability_zone.AvailabilityZoneController, [], [])
|
||||
|
||||
|
||||
keypairs_controller = functools.partial(
|
||||
_create_controller, keypairs.KeypairController, [], [])
|
||||
|
||||
@@ -243,6 +248,12 @@ ROUTE_LIST = (
|
||||
('/os-assisted-volume-snapshots/{id}', {
|
||||
'DELETE': [assisted_volume_snapshots_controller, 'delete']
|
||||
}),
|
||||
('/os-availability-zone', {
|
||||
'GET': [availability_zone_controller, 'index']
|
||||
}),
|
||||
('/os-availability-zone/detail', {
|
||||
'GET': [availability_zone_controller, 'detail'],
|
||||
}),
|
||||
('/os-floating-ip-dns', {
|
||||
'GET': [floating_ip_dns_controller, 'index']
|
||||
}),
|
||||
|
||||
@@ -73,7 +73,6 @@ wsgi_scripts =
|
||||
|
||||
nova.api.v21.extensions =
|
||||
attach_interfaces = nova.api.openstack.compute.attach_interfaces:AttachInterfaces
|
||||
availability_zone = nova.api.openstack.compute.availability_zone:AvailabilityZone
|
||||
baremetal_nodes = nova.api.openstack.compute.baremetal_nodes:BareMetalNodes
|
||||
block_device_mapping = nova.api.openstack.compute.block_device_mapping:BlockDeviceMapping
|
||||
cells = nova.api.openstack.compute.cells:Cells
|
||||
|
||||
Reference in New Issue
Block a user