StackResource set requires_deferred_auth=True
The dynamic evaluation of requires_deferred_auth will not work as the nested stack has not been created when requires_deferred_auth is evaluated. In some cases subclasses of StackResource could implement dynamic evaluation but for now it is safer to assume any template with a nested stack needs requires_deferred_auth=True Change-Id: I4ca3804ede5c7aa2167931279e5bed84480ac454 Closes-Bug: #1229412
This commit is contained in:
parent
cf38339328
commit
44d759db8a
|
@ -34,6 +34,11 @@ class StackResource(resource.Resource):
|
|||
as a resource in a parent stack.
|
||||
'''
|
||||
|
||||
# Assume True as this is evaluated before the stack is created
|
||||
# so there is no way to know for sure without subclass-specific
|
||||
# template parsing.
|
||||
requires_deferred_auth = True
|
||||
|
||||
def __init__(self, name, json_snippet, stack):
|
||||
super(StackResource, self).__init__(name, json_snippet, stack)
|
||||
self._nested = None
|
||||
|
@ -43,10 +48,6 @@ class StackResource(resource.Resource):
|
|||
else:
|
||||
self.recursion_depth = 0
|
||||
|
||||
@property
|
||||
def requires_deferred_auth(self):
|
||||
return self.nested().requires_deferred_auth()
|
||||
|
||||
def _outputs_to_attribs(self, json_snippet):
|
||||
if not self.attributes and 'Outputs' in json_snippet:
|
||||
self.attributes_schema = (
|
||||
|
|
|
@ -384,16 +384,3 @@ class StackResourceTest(HeatTestCase):
|
|||
self.m.VerifyAll()
|
||||
# Restore state_set to let clean up proceed
|
||||
self.stack.state_set = st_set
|
||||
|
||||
@utils.stack_delete_after
|
||||
def test_requires_deferred_auth(self):
|
||||
|
||||
self.parent_resource.create_with_template(self.templ,
|
||||
{"KeyName": "key"})
|
||||
|
||||
stack = self.parent_resource.nested()
|
||||
self.assertFalse(self.parent_resource.requires_deferred_auth)
|
||||
|
||||
# make the resource in the nested stack require deferred auth
|
||||
stack['WebServer'].requires_deferred_auth = True
|
||||
self.assertTrue(self.parent_resource.requires_deferred_auth)
|
||||
|
|
Loading…
Reference in New Issue