]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Move _delete_server to nova_utils
authorSteve Baker <sbaker@redhat.com>
Thu, 15 Aug 2013 23:23:49 +0000 (11:23 +1200)
committerSteve Baker <sbaker@redhat.com>
Mon, 19 Aug 2013 01:15:15 +0000 (13:15 +1200)
Refactoring as part of blueprint native-nova-instance.

Change-Id: Iaf3ab0333d891e6ac3bb07832a1acffd3e5ba43e

heat/engine/resources/instance.py
heat/engine/resources/nova_utils.py

index 995d765904813b122b595e4164c1b25525df9163..8e861e7e0dec92a984ca0fb6a06f555365cfc83a 100644 (file)
@@ -326,7 +326,8 @@ class Instance(resource.Resource):
                 fault = server.fault or {}
                 message = fault.get('message', 'Unknown')
                 code = fault.get('code', 500)
-                delete = scheduler.TaskRunner(self._delete_server, server)
+                delete = scheduler.TaskRunner(
+                    nova_utils.delete_server, server)
                 delete(wait_time=0.2)
                 exc = exception.Error(_("Build of server %(server)s failed: "
                                         "%(message)s (%(code)s)") %
@@ -414,21 +415,6 @@ class Instance(resource.Resource):
         # make sure the image exists.
         nova_utils.get_image_id(self.nova(), self.properties['ImageId'])
 
-    def _delete_server(self, server):
-        '''
-        Return a co-routine that deletes the server and waits for it to
-        disappear from Nova.
-        '''
-        server.delete()
-
-        while True:
-            yield
-
-            try:
-                server.get()
-            except clients.novaclient.exceptions.NotFound:
-                break
-
     def _detach_volumes_task(self):
         '''
         Detach volumes from the instance
@@ -453,7 +439,8 @@ class Instance(resource.Resource):
         except clients.novaclient.exceptions.NotFound:
             pass
         else:
-            delete = scheduler.TaskRunner(self._delete_server, server)
+            delete = scheduler.TaskRunner(
+                nova_utils.delete_server, server)
             delete(wait_time=0.2)
 
         self.resource_id = None
index 644c88b9f8a6cb5491739493e474a46418f84c50..a2a6975228e46968507b347e10dc8503c1380ef6 100644 (file)
@@ -173,3 +173,19 @@ def build_userdata(resource, userdata=None):
     mime_blob = MIMEMultipart(_subparts=subparts)
 
     return mime_blob.as_string()
+
+
+def delete_server(server):
+    '''
+    Return a co-routine that deletes the server and waits for it to
+    disappear from Nova.
+    '''
+    server.delete()
+
+    while True:
+        yield
+
+        try:
+            server.get()
+        except clients.novaclient.exceptions.NotFound:
+            break