]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
heat engine : convert stack resource to physical_resource_name
authorSteven Hardy <shardy@redhat.com>
Tue, 18 Sep 2012 12:28:49 +0000 (13:28 +0100)
committerSteven Hardy <shardy@redhat.com>
Tue, 18 Sep 2012 15:03:31 +0000 (16:03 +0100)
Covert stack.Stack to use physical_resource_name or nested stack
references are not fully-qualified

Ref #241

Change-Id: I6e38a7de5af5fe79ddc62cfee9dfe26cae30df6c
Signed-off-by: Steven Hardy <shardy@redhat.com>
heat/engine/stack.py

index a3af810cbc92364da8ef3f5de20099df868be4c3..189f5b8216ceab859225fc2d25affd318f7d6aeb 100644 (file)
@@ -60,7 +60,8 @@ class Stack(Resource):
         Handle the creation of the nested stack from a given JSON template.
         '''
         template = parser.Template(child_template)
-        params = parser.Parameters(self.name, template, self._params())
+        params = parser.Parameters(self.physical_resource_name(), template,
+                                   self._params())
 
         self._nested = parser.Stack(self.context,
                                     self.physical_resource_name(),
@@ -93,8 +94,8 @@ class Stack(Resource):
 
     def FnGetAtt(self, key):
         if not key.startswith('Outputs.'):
-            raise exception.InvalidTemplateAttribute(resource=self.name,
-                                                     key=key)
+            raise exception.InvalidTemplateAttribute(
+                        resource=self.physical_resource_name(), key=key)
 
         prefix, dot, op = key.partition('.')
         stack = self.nested()
@@ -102,7 +103,7 @@ class Stack(Resource):
             # This seems like a hack, to get past validation
             return ''
         if op not in stack.outputs:
-            raise exception.InvalidTemplateAttribute(resource=self.name,
-                                                     key=key)
+            raise exception.InvalidTemplateAttribute(
+                        resource=self.physical_resource_name(), key=key)
 
         return stack.output(op)