Report checker stage as - if result is unknown and compiler is not checker
authorMatthieu Patou <mat@matws.net>
Sun, 7 Nov 2010 20:09:08 +0000 (23:09 +0300)
committerMatthieu Patou <mat@matws.net>
Sun, 7 Nov 2010 20:09:08 +0000 (23:09 +0300)
buildfarm/data.py
web/build.py

index ca1fe28bb1312e03859dbbc89f8a9ce071371938..acddf8444116e21094337d3ee614e718b59942ab 100644 (file)
@@ -38,6 +38,11 @@ class BuildStatus(object):
     def __str__(self):
         return repr((self.stages, self.other_failures))
 
+    def setcheckerstage(self, val):
+        self.stages[4] = val
+
+    def getcheckerstage(self):
+        return self.stages[4]
 
 def check_dir_exists(kind, path):
     if not os.path.isdir(path):
@@ -98,7 +103,7 @@ def build_status_from_logs(log, err):
     else:
         sstatus = None
 
-    return BuildStatus((cstatus, bstatus, istatus, tstatus, sstatus), other_failures)
+    return BuildStatus([cstatus, bstatus, istatus, tstatus, sstatus], other_failures)
 
 
 def lcov_extract_percentage(text):
index 07db80c37470b2ba08d3d84e8728d7a8872e6d8e..a50771a8da2b52f3e67865aa348149ada49b25de 100755 (executable)
@@ -92,6 +92,8 @@ def html_build_status(status):
     def span_status(st):
         if st is None:
             return span("status unknown", "?")
+        elif st == "-":
+            return span("status notapplicable", "-")
         elif st == 0:
             return span("status passed", "ok")
         else:
@@ -109,7 +111,10 @@ def html_build_status(status):
 
 def build_status(myself, tree, host, compiler, rev=None):
     build = db.get_build(tree, host, compiler, rev)
-    status = html_build_status(build.status())
+    rawstatus = build.status()
+    if not rawstatus.getcheckerstage() and compiler != "checker":
+        rawstatus.setcheckerstage("-")
+    status = html_build_status(rawstatus)
     return build_link(myself, tree, host, compiler, rev, status)