Merge branch 'upstreammaster'
[sfa.git] / sfa / openstack / nova_driver.py
index fe405b3..50112cd 100644 (file)
@@ -399,9 +399,7 @@ class NovaDriver(Driver):
             raise SliverDoesNotExist("You have not allocated any slivers here") 
         
         result = {}
-        top_level_status = 'unknown'
-        if instances:
-            top_level_status = 'ready'
+        top_level_status = 'ready'
         result['geni_urn'] = slice_urn
         result['plos_login'] = 'root'
         # do we need real dates here? 
@@ -423,9 +421,14 @@ class NovaDriver(Driver):
             if instance.status.lower() == 'active':
                 res['boot_state'] = 'ready'
                 res['geni_status'] = 'ready'
+            elif instance.status.lower() == 'error':
+                res['boot_state'] = 'failed'
+                res['geni_status'] = 'failed'
+                top_level_status = 'failed'
             else:
-                res['boot_state'] = 'unknown'  
-                res['geni_status'] = 'unknown'
+                res['boot_state'] = 'notready'  
+                res['geni_status'] = 'notready'
+                top_level_status = 'notready'
             resources.append(res)
             
         result['geni_status'] = top_level_status