scenario: A stack with a ResourceGroup where a resource inside that group is in CREATE_FAILED, when that stack is deleted the following happens:
- the first attempt to delete the stack results in DELETE_FAILED
- calling heat resource-list results in a NotFound response even though heat stack-show confirms the stack exists
- the second attempt to delete the stack will succeed, but may result in the sibling resources of the CREATED_FAILED one remaining undeleted (ie, they leak)
I believe the root cause to all these issues is that Resource.nested() may raise a NotFound exception, but calls to nested are not catching this (specifically heat.engine.api.format_stack_resource)
scenario: A stack with a ResourceGroup where a resource inside that group is in CREATE_FAILED, when that stack is deleted the following happens:
- the first attempt to delete the stack results in DELETE_FAILED
- calling heat resource-list results in a NotFound response even though heat stack-show confirms the stack exists
- the second attempt to delete the stack will succeed, but may result in the sibling resources of the CREATED_FAILED one remaining undeleted (ie, they leak)
I believe the root cause to all these issues is that Resource.nested() may raise a NotFound exception, but calls to nested are not catching this (specifically heat.engine. api.format_ stack_resource)