Przeglądaj źródła

Fixes missing image container_format race condition

Alessandro Pilotti 9 lat temu
rodzic
commit
acb698116d
1 zmienionych plików z 4 dodań i 5 usunięć
  1. 4 5
      coriolis/providers/openstack/__init__.py

+ 4 - 5
coriolis/providers/openstack/__init__.py

@@ -1180,6 +1180,10 @@ class ExportProvider(base.BaseExportProvider):
     def _create_snapshot(self, nova, glance, instance, export_path):
     def _create_snapshot(self, nova, glance, instance, export_path):
         image_id = instance.create_image(_get_unique_name())
         image_id = instance.create_image(_get_unique_name())
         try:
         try:
+            self._event_manager.progress_update(
+                "Waiting for instance snapshot to complete")
+            _wait_for_image(nova, image_id)
+
             image = glance.images.get(image_id)
             image = glance.images.get(image_id)
             image_size = image.size
             image_size = image.size
 
 
@@ -1188,11 +1192,6 @@ class ExportProvider(base.BaseExportProvider):
                     "Unsupported container format: %s" %
                     "Unsupported container format: %s" %
                     image.container_format)
                     image.container_format)
 
 
-            self._event_manager.progress_update(
-                "Waiting for instance snapshot to complete")
-
-            _wait_for_image(nova, image_id)
-
             self._event_manager.progress_update(
             self._event_manager.progress_update(
                 "Exporting instance snapshot")
                 "Exporting instance snapshot")