def _add_dependencies(self, deps, head, fragment):
if isinstance(fragment, dict):
for key, value in fragment.items():
- if key in ('DependsOn', 'Ref'):
+ if key in ('DependsOn', 'Ref', 'Fn::GetAtt'):
+ if key == 'Fn::GetAtt':
+ value, head = value
+
try:
target = self.stack.resources[value]
except KeyError:
key=head)
if key == 'DependsOn' or target.strict_dependency:
deps += (self, target)
- elif key != 'Fn::GetAtt':
+ else:
self._add_dependencies(deps, key, value)
elif isinstance(fragment, list):
for item in fragment:
instance.Instance.handle_create().AndReturn(cookie)
create_complete = instance.Instance.check_create_complete(cookie)
create_complete.InAnyOrder().AndReturn(True)
+ scheduler.TaskRunner._sleep(mox.IsA(int)).AndReturn(None)
self.m.StubOutWithMock(instance.Instance, 'FnGetAtt')
return stack
scheduler.TaskRunner._sleep(mox.IsA(int)).WithSideEffects(check_empty)
scheduler.TaskRunner._sleep(mox.IsA(int)).WithSideEffects(post_success)
+ scheduler.TaskRunner._sleep(mox.IsA(int)).AndReturn(None)
self.m.ReplayAll()
self.stack.create()