]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
If a stack create fails, ensure the stack is deleteable
authorSteven Dake <sdake@redhat.com>
Sat, 16 Mar 2013 20:37:29 +0000 (13:37 -0700)
committerSteven Dake <sdake@redhat.com>
Sat, 16 Mar 2013 20:46:12 +0000 (13:46 -0700)
The resource delete operation attempts to delete CREATE_FAILED
resources.  Further it attempts to delete resources that were
not created during a creation operation because further processing
of the template does not take place.

This patch special cases these two conditions in the delete operation.

Change-Id: I1c83ba68754f38a0f7e91e77fcf02177c457504e
Fixes: Bug #1155824
heat/engine/resource.py

index 450c575d79caa5b3ce258d9566b7c733ccecb10d..bcfef8d209cf11c5cf955bb9bdd406d432e14a28 100644 (file)
@@ -396,6 +396,13 @@ class Resource(object):
             return
         if self.state == self.DELETE_IN_PROGRESS:
             return 'Resource deletion already in progress'
+        if self.state == self.CREATE_FAILED:
+            return
+        # Further resources will not be created in a CREATE_FAILED stack.
+        # The state of these resources is None.  Do not delete as an
+        # undeleteable stack will result
+        if self.state is None:
+            return
 
         logger.info('deleting %s (inst:%s db_id:%s)' %
                     (str(self), self.resource_id, str(self.id)))