Minor refactoring of get_status
authorEd Bartosh <eduard.bartosh@intel.com>
Wed, 2 Apr 2014 06:25:46 +0000 (09:25 +0300)
committerEd Bartosh <eduard.bartosh@intel.com>
Wed, 2 Apr 2014 07:42:44 +0000 (10:42 +0300)
Change-Id: Ia5f5e02b9231d11c85b884be9c7c64c64bbfed11
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
repa/list.py

index 99620ab..0979662 100755 (executable)
@@ -46,20 +46,22 @@ def get_status(meta, build_results=None):
             codes.add(target.get('state'))
             for pkginfo in target['packages']:
                 codes.add(pkginfo[1])
-        if 'broken' in codes:
-            return 'broken source'
-        if 'unresolvable' in codes:
-            return 'unresolvable packages'
-        if 'failed' in codes:
-            return 'package build failed'
-        if 'building' in codes:
-            return 'package building'
+
+        statuses = [('broken', 'broken source'),
+                    ('unresolvable', 'unresolvable packages'),
+                    ('failed', 'package build failed'),
+                    ('building', 'package building')]
+        for pkgstatus, status in statuses:
+            if pkgstatus in codes:
+                return status
+
     if 'images' in meta:
         for img in meta['images']:
-            if img['status'] == 'failed':
-                return 'image build failed'
-            if img['status'] == 'building':
-                return 'image building'
+            statuses = [('failed', 'image build failed'),
+                        ('building', 'image building')]
+            for imgstatus, status in statuses:
+                if img['status'] == imgstatus:
+                    return status
     return 'ready'