diff options
author | Jenkins <jenkins@review.openstack.org> | 2013-05-20 22:18:27 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2013-05-20 22:18:27 +0000 |
commit | eebcd6f2058d78c87dd2ee0a9a90f21f33f44e97 (patch) | |
tree | 301254a1004896f48ca78fa368635e46e2de9278 /nova/quota.py | |
parent | d9b316c18c70e8616578033a9ef353721d5f28c3 (diff) | |
parent | 682fb1de14c142816df2a453062abfd351157a4b (diff) | |
download | nova-eebcd6f2058d78c87dd2ee0a9a90f21f33f44e97.tar.gz nova-eebcd6f2058d78c87dd2ee0a9a90f21f33f44e97.tar.xz nova-eebcd6f2058d78c87dd2ee0a9a90f21f33f44e97.zip |
Merge "Editable default quota support"
Diffstat (limited to 'nova/quota.py')
-rw-r--r-- | nova/quota.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/nova/quota.py b/nova/quota.py index 8aaa3ed31..a1c877ecc 100644 --- a/nova/quota.py +++ b/nova/quota.py @@ -105,14 +105,18 @@ class DbQuotaDriver(object): def get_defaults(self, context, resources): """Given a list of resources, retrieve the default quotas. + Use the class quotas named `_DEFAULT_QUOTA_NAME` as default quotas, + if it exists. :param context: The request context, for access checks. :param resources: A dictionary of the registered resources. """ quotas = {} + default_quotas = db.quota_class_get_default(context) for resource in resources.values(): - quotas[resource.name] = resource.default + quotas[resource.name] = default_quotas.get(resource.name, + resource.default) return quotas @@ -180,6 +184,8 @@ class DbQuotaDriver(object): else: class_quotas = {} + default_quotas = self.get_defaults(context, resources) + for resource in resources.values(): # Omit default/quota class values if not defaults and resource.name not in project_quotas: @@ -187,7 +193,7 @@ class DbQuotaDriver(object): quotas[resource.name] = dict( limit=project_quotas.get(resource.name, class_quotas.get( - resource.name, resource.default)), + resource.name, default_quotas[resource.name])), ) # Include usages if desired. This is optional because one |