Do not perform the tenant stack limit check for admin user

Removing stack creation limit for admin since admin can view all stacks,
and stacks created by other tenants would have been counted in the limit
check.

Change-Id: Ie2e9251245e7e16309661154e17724e5984c21e6
Story: 2003487
Task: 24756
This commit is contained in:
Nakul Dahiwade 2018-08-17 18:46:50 +00:00
parent d96b564fd4
commit 22b14ff975
1 changed files with 7 additions and 5 deletions

View File

@ -664,11 +664,13 @@ class EngineService(service.ServiceBase):
if stack_object.Stack.get_by_name(cnxt, stack_name):
raise exception.StackExists(stack_name=stack_name)
tenant_limit = cfg.CONF.max_stacks_per_tenant
if stack_object.Stack.count_all(cnxt) >= tenant_limit:
message = _("You have reached the maximum stacks per tenant, "
"%d. Please delete some stacks.") % tenant_limit
raise exception.RequestLimitExceeded(message=message)
# Do not stack limit check for admin since admin can see all stacks.
if not cnxt.is_admin:
tenant_limit = cfg.CONF.max_stacks_per_tenant
if stack_object.Stack.count_all(cnxt) >= tenant_limit:
message = _("You have reached the maximum stacks per tenant, "
"%d. Please delete some stacks.") % tenant_limit
raise exception.RequestLimitExceeded(message=message)
self._validate_template(cnxt, parsed_template)
def _validate_template(self, cnxt, parsed_template):