diff --git a/heat/api/openstack/v1/stacks.py b/heat/api/openstack/v1/stacks.py index fe493394fd..3e29dbd89d 100644 --- a/heat/api/openstack/v1/stacks.py +++ b/heat/api/openstack/v1/stacks.py @@ -142,7 +142,7 @@ class InstantiationData(object): def tenant_local(handler): @wraps(handler) def handle_stack_method(controller, req, tenant_id, **kwargs): - req.context.tenant = tenant_id + req.context.tenant_id = tenant_id return handler(controller, req, **kwargs) return handle_stack_method @@ -152,7 +152,7 @@ def identified_stack(handler): @tenant_local @wraps(handler) def handle_stack_method(controller, req, stack_name, stack_id, **kwargs): - stack_identity = identifier.HeatIdentifier(req.context.tenant, + stack_identity = identifier.HeatIdentifier(req.context.tenant_id, stack_name, stack_id) return handler(controller, req, dict(stack_identity), **kwargs) diff --git a/heat/db/sqlalchemy/api.py b/heat/db/sqlalchemy/api.py index ee6a935649..2e65467317 100644 --- a/heat/db/sqlalchemy/api.py +++ b/heat/db/sqlalchemy/api.py @@ -80,7 +80,7 @@ def resource_get_by_physical_resource_id(context, physical_resource_id): .filter_by(nova_instance=physical_resource_id) .first()) if (result is not None and context is not None and - result.stack.tenant != context.tenant): + result.stack.tenant != context.tenant_id): return None return result @@ -120,7 +120,7 @@ def stack_get_by_name(context, stack_name, owner_id=None): result = model_query(context, models.Stack).\ filter_by(name=stack_name).first() if (result is not None and context is not None and - result.tenant != context.tenant): + result.tenant != context.tenant_id): return None return result @@ -129,7 +129,7 @@ def stack_get(context, stack_id): result = model_query(context, models.Stack).get(stack_id) if (result is not None and context is not None and - result.tenant != context.tenant): + result.tenant != context.tenant_id): return None return result @@ -144,7 +144,7 @@ def stack_get_all(context): def stack_get_by_tenant(context): results = model_query(context, models.Stack).\ filter_by(owner_id=None).\ - filter_by(tenant=context.tenant).all() + filter_by(tenant=context.tenant_id).all() return results @@ -235,7 +235,7 @@ def event_get_all(context): def event_get_all_by_tenant(context): stacks = model_query(context, models.Stack).\ - filter_by(tenant=context.tenant).all() + filter_by(tenant=context.tenant_id).all() results = [] for stack in stacks: results.extend(model_query(context, models.Event). diff --git a/heat/engine/manager.py b/heat/engine/manager.py index c525606c38..4145813c6b 100644 --- a/heat/engine/manager.py +++ b/heat/engine/manager.py @@ -78,7 +78,7 @@ class EngineManager(manager.Manager): def _get_stack(self, context, stack_identity): identity = identifier.HeatIdentifier(**stack_identity) - if identity.tenant != context.tenant: + if identity.tenant != context.tenant_id: raise AttributeError('Invalid tenant') s = db_api.stack_get(context, identity.stack_id) diff --git a/heat/engine/parser.py b/heat/engine/parser.py index e61922308a..9f804cd0d6 100644 --- a/heat/engine/parser.py +++ b/heat/engine/parser.py @@ -309,7 +309,7 @@ class Stack(object): 'owner_id': owner and owner.id, 'user_creds_id': new_creds.id, 'username': self.context.username, - 'tenant': self.context.tenant, + 'tenant': self.context.tenant_id, 'status': self.state, 'status_reason': self.state_description, 'timeout': self.timeout_mins, @@ -326,7 +326,7 @@ class Stack(object): ''' Return an identifier for this stack. ''' - return identifier.HeatIdentifier(self.context.tenant, + return identifier.HeatIdentifier(self.context.tenant_id, self.name, self.id) def __iter__(self): diff --git a/heat/tests/test_api_cfn_v1.py b/heat/tests/test_api_cfn_v1.py index 263e5c7893..0e25b45c33 100644 --- a/heat/tests/test_api_cfn_v1.py +++ b/heat/tests/test_api_cfn_v1.py @@ -49,6 +49,8 @@ class StackControllerTest(unittest.TestCase): ctx = context.get_admin_context() self.m.StubOutWithMock(ctx, 'username') ctx.username = user + self.m.StubOutWithMock(ctx, 'tenant_id') + ctx.tenant_id = 't' self.m.StubOutWithMock(auth, 'authenticate') return ctx diff --git a/heat/tests/test_api_openstack_v1.py b/heat/tests/test_api_openstack_v1.py index 2311518523..b5a52075ff 100644 --- a/heat/tests/test_api_openstack_v1.py +++ b/heat/tests/test_api_openstack_v1.py @@ -161,6 +161,8 @@ class StackControllerTest(unittest.TestCase): ctx = context.get_admin_context() self.m.StubOutWithMock(ctx, 'username') ctx.username = user + self.m.StubOutWithMock(ctx, 'tenant_id') + ctx.tenant_id = self.tenant self.m.StubOutWithMock(auth, 'authenticate') return ctx diff --git a/heat/tests/test_engine_manager.py b/heat/tests/test_engine_manager.py index 60a738693e..f6dde6a4f3 100644 --- a/heat/tests/test_engine_manager.py +++ b/heat/tests/test_engine_manager.py @@ -45,9 +45,9 @@ def create_context(mocks, user='stacks_test_user', tenant='test_admin', ctx=None): ctx = ctx or context.get_admin_context() mocks.StubOutWithMock(ctx, 'username') - mocks.StubOutWithMock(ctx, 'tenant') + mocks.StubOutWithMock(ctx, 'tenant_id') ctx.username = user - ctx.tenant = tenant + ctx.tenant_id = tenant return ctx