Merge "Use plain routes list for os-quota-classes endpoint instead of stevedore"
This commit is contained in:
commit
3000c8637e
|
@ -28,7 +28,6 @@ from nova import utils
|
|||
|
||||
|
||||
QUOTAS = quota.QUOTAS
|
||||
ALIAS = "os-quota-class-sets"
|
||||
|
||||
# Quotas that are only enabled by specific extensions
|
||||
EXTENDED_QUOTAS = {'server_groups': 'os-server-group-quotas',
|
||||
|
@ -41,10 +40,10 @@ class QuotaClassSetsController(wsgi.Controller):
|
|||
|
||||
def __init__(self, **kwargs):
|
||||
self.supported_quotas = QUOTAS.resources
|
||||
extension_info = kwargs.pop('extension_info').get_extensions()
|
||||
# TODO(jichenjc): need fix v2 and v2.1 API difference here see bug
|
||||
# 1693168 for more info
|
||||
for resource, extension in EXTENDED_QUOTAS.items():
|
||||
if extension not in extension_info:
|
||||
self.supported_quotas.remove(resource)
|
||||
self.supported_quotas.remove(resource)
|
||||
|
||||
def _format_quota_set(self, quota_class, quota_set):
|
||||
"""Convert the quota object to a result dict."""
|
||||
|
@ -89,22 +88,3 @@ class QuotaClassSetsController(wsgi.Controller):
|
|||
|
||||
values = QUOTAS.get_class_quotas(context, quota_class)
|
||||
return self._format_quota_set(None, values)
|
||||
|
||||
|
||||
class QuotaClasses(extensions.V21APIExtensionBase):
|
||||
"""Quota classes management support."""
|
||||
|
||||
name = "QuotaClasses"
|
||||
alias = ALIAS
|
||||
version = 1
|
||||
|
||||
def get_resources(self):
|
||||
resources = []
|
||||
res = extensions.ResourceExtension(
|
||||
ALIAS,
|
||||
QuotaClassSetsController(extension_info=self.extension_info))
|
||||
resources.append(res)
|
||||
return resources
|
||||
|
||||
def get_controller_extensions(self):
|
||||
return []
|
||||
|
|
|
@ -61,6 +61,7 @@ from nova.api.openstack.compute import migrate_server
|
|||
from nova.api.openstack.compute import migrations
|
||||
from nova.api.openstack.compute import multinic
|
||||
from nova.api.openstack.compute import pause_server
|
||||
from nova.api.openstack.compute import quota_classes
|
||||
from nova.api.openstack.compute import quota_sets
|
||||
from nova.api.openstack.compute import remote_consoles
|
||||
from nova.api.openstack.compute import rescue
|
||||
|
@ -209,6 +210,10 @@ migrations_controller = functools.partial(_create_controller,
|
|||
migrations.MigrationsController, [], [])
|
||||
|
||||
|
||||
quota_classes_controller = functools.partial(_create_controller,
|
||||
quota_classes.QuotaClassSetsController, [], [])
|
||||
|
||||
|
||||
quota_set_controller = functools.partial(_create_controller,
|
||||
quota_sets.QuotaSetsController, [], [])
|
||||
|
||||
|
@ -484,6 +489,10 @@ ROUTE_LIST = (
|
|||
('/os-migrations', {
|
||||
'GET': [migrations_controller, 'index']
|
||||
}),
|
||||
('/os-quota-class-sets/{id}', {
|
||||
'GET': [quota_classes_controller, 'show'],
|
||||
'PUT': [quota_classes_controller, 'update']
|
||||
}),
|
||||
('/os-quota-sets/{id}', {
|
||||
'GET': [quota_set_controller, 'show'],
|
||||
'PUT': [quota_set_controller, 'update'],
|
||||
|
|
|
@ -82,7 +82,6 @@ nova.api.v21.extensions =
|
|||
multiple_create = nova.api.openstack.compute.multiple_create:MultipleCreate
|
||||
networks = nova.api.openstack.compute.networks:Networks
|
||||
networks_associate = nova.api.openstack.compute.networks_associate:NetworksAssociate
|
||||
quota_classes = nova.api.openstack.compute.quota_classes:QuotaClasses
|
||||
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
|
||||
|
|
Loading…
Reference in New Issue