From 4c57678486e33ee3a0f91e7f0801b5132c91141e Mon Sep 17 00:00:00 2001 From: Zane Bitter Date: Mon, 12 Nov 2012 17:42:37 +0100 Subject: [PATCH] RPC API: Return a resource identifier Change-Id: Ica33a82a8a201f625f293292e1ae7e5ca26559ef Signed-off-by: Zane Bitter --- heat/engine/api.py | 5 +++-- heat/tests/test_api_cfn_v1.py | 18 ++++++++++++++++++ heat/tests/test_engine_service.py | 3 +++ 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/heat/engine/api.py b/heat/engine/api.py index 08795a97..b0a4a668 100644 --- a/heat/engine/api.py +++ b/heat/engine/api.py @@ -115,12 +115,12 @@ RES_KEYS = ( RES_DESCRIPTION, RES_UPDATED_TIME, RES_NAME, RES_PHYSICAL_ID, RES_METADATA, RES_STATUS, RES_STATUS_DATA, RES_TYPE, - RES_STACK_ID, RES_STACK_NAME, + RES_ID, RES_STACK_ID, RES_STACK_NAME, ) = ( 'description', 'updated_time', 'logical_resource_id', 'physical_resource_id', 'metadata', 'resource_status', 'resource_status_reason', 'resource_type', - STACK_ID, STACK_NAME, + 'resource_identity', STACK_ID, STACK_NAME, ) @@ -139,6 +139,7 @@ def format_stack_resource(resource): RES_STATUS: resource.state, RES_STATUS_DATA: resource.state_description, RES_TYPE: resource.t['Type'], + RES_ID: dict(resource.identifier()), RES_STACK_ID: dict(resource.stack.identifier()), RES_STACK_NAME: resource.stack.name, } diff --git a/heat/tests/test_api_cfn_v1.py b/heat/tests/test_api_cfn_v1.py index 8ba73bbe..938fb5aa 100644 --- a/heat/tests/test_api_cfn_v1.py +++ b/heat/tests/test_api_cfn_v1.py @@ -869,6 +869,12 @@ class StackControllerTest(unittest.TestCase): # Stub out the RPC call to the engine with a pre-canned response engine_resp = {u'description': u'', + u'resource_identity': { + u'tenant': u't', + u'stack_name': u'wordpress', + u'stack_id': u'6', + u'path': u'resources/WikiDatabase' + }, u'stack_name': u'wordpress', u'logical_resource_id': u'WikiDatabase', u'resource_status_reason': None, @@ -928,6 +934,12 @@ class StackControllerTest(unittest.TestCase): # Stub out the RPC call to the engine with a pre-canned response engine_resp = [{u'description': u'', + u'resource_identity': { + u'tenant': u't', + u'stack_name': u'wordpress', + u'stack_id': u'6', + u'path': u'resources/WikiDatabase' + }, u'stack_name': u'wordpress', u'logical_resource_id': u'WikiDatabase', u'resource_status_reason': None, @@ -1020,6 +1032,12 @@ class StackControllerTest(unittest.TestCase): # Stub out the RPC call to the engine with a pre-canned response engine_resp = [{u'description': u'', + u'resource_identity': { + u'tenant': u't', + u'stack_name': u'wordpress', + u'stack_id': u'6', + u'path': u'/resources/WikiDatabase' + }, u'stack_name': u'wordpress', u'logical_resource_id': u'WikiDatabase', u'resource_status_reason': None, diff --git a/heat/tests/test_engine_service.py b/heat/tests/test_engine_service.py index bf19d174..24e8a6e3 100644 --- a/heat/tests/test_engine_service.py +++ b/heat/tests/test_engine_service.py @@ -489,6 +489,7 @@ class stackServiceTest(unittest.TestCase): r = self.man.describe_stack_resource(self.ctx, self.stack_identity, 'WebServer') + self.assertTrue('resource_identity' in r) self.assertTrue('description' in r) self.assertTrue('updated_time' in r) self.assertTrue('stack_identity' in r) @@ -522,6 +523,7 @@ class stackServiceTest(unittest.TestCase): self.assertEqual(len(resources), 1) r = resources[0] + self.assertTrue('resource_identity' in r) self.assertTrue('description' in r) self.assertTrue('updated_time' in r) self.assertTrue('stack_identity' in r) @@ -568,6 +570,7 @@ class stackServiceTest(unittest.TestCase): self.assertEqual(len(resources), 1) r = resources[0] + self.assertTrue('resource_identity' in r) self.assertTrue('updated_time' in r) self.assertTrue('physical_resource_id' in r) self.assertTrue('logical_resource_id' in r) -- 2.45.2