]> git.pld-linux.org Git - projects/pld-builder.new.git/commitdiff
- html queue stats
authorMichal Moskal <michal@moskal.me>
Sat, 14 Jun 2003 20:07:08 +0000 (20:07 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    PLD_Builder/bqueue.py -> 1.8
    PLD_Builder/path.py -> 1.11
    PLD_Builder/request.py -> 1.16
    PLD_Builder/request_handler.py -> 1.17
    PLD_Builder/srpm_builder.py -> 1.18

PLD_Builder/bqueue.py
PLD_Builder/path.py
PLD_Builder/request.py
PLD_Builder/request_handler.py
PLD_Builder/srpm_builder.py

index 2bea1805bd0c847ebf5f17861244753786a20ff1..12d0c15c0db54f161aabadcc5e5db41d0914a614 100644 (file)
@@ -19,8 +19,18 @@ class B_Queue:
     self.fd = None
 
   def dump(self, f):
+    self.requests.reverse()
     for r in self.requests:
       r.dump(f)
+    self.requests.reverse()
+  
+  def dump_html(self, f):
+    f.write("<html><head><title>PLD builder queue</title></head><body>\n")
+    self.requests.reverse()
+    for r in self.requests:
+      r.dump_html(f)
+    self.requests.reverse()
+    f.write("</body></html>\n")
   
   # read possibly compressed, signed queue
   def read_signed(self):
index 06edb6ee6f953601c2a8b5554a20b928d788c372..07ecd529df1e9ef1810cd1e0ede67cd96513cc43 100644 (file)
@@ -25,3 +25,4 @@ srpms_dir = www_dir + "srpms/"
 req_queue_signed_file = www_dir + "queue.gz"
 max_req_no_file = www_dir + "max_req_no"
 queue_stats_file = www_dir + "queue.txt"
+queue_html_stats_file = www_dir + "queue.html"
index b6cc020528eddd9dde58a18684036dcbb170531b..271f1bf36ae08a31616650a7e492d0b9f6d2ad0e 100644 (file)
@@ -80,6 +80,18 @@ class Group:
       b.dump(f)
     f.write("\n")
 
+  def dump_html(self, f):
+    f.write("<p><b>%d</b>. %s from %s <small>%s, %d, %s</small><br/>\n" % \
+                (self.no,
+                 escape(time.strftime("%Y.%m.%d %H:%M:%S", time.localtime(self.time))),
+                 escape(self.requester),
+                 self.id, self.priority, string.join(self.flags)))
+    f.write("<ul>\n")
+    for b in self.batches:
+      b.dump_html(f)
+    f.write("</ul>\n")
+    f.write("</p>\n")
+
   def write_to(self, f):
     f.write("""
        <group id="%s" no="%d" flags="%s">
@@ -150,6 +162,24 @@ class Batch:
       builders.append("%s:%s" % (b, self.builders_status[b]))
     f.write("    builders: %s\n" % string.join(builders))
 
+  def dump_html(self, f):
+    f.write("<li>\n")
+    f.write("%s (%s -R %s %s) <small>[" % \
+        (self.src_rpm, self.spec, self.branch, self.bconds_string()))
+    builders = []
+    for b in self.builders:
+      s = self.builders_status[b]
+      if s == "OK":
+        c = "green"
+      elif s == "FAIL":
+        c = "red"
+      elif s == "SKIP":
+        c = "blue"
+      else:
+        c = "black"
+      builders.append("<font color='%s'><b>%s:%s</b></font>" % (c, b, s))
+    f.write("%s]</small></li>\n" % string.join(builders))
+
   def bconds_string(self):
     r = ""
     for b in self.bconds_with:
index 4dc9f1f0c31abd6bbf36aa677313e14ec1dd3931..92e418e2e172cf38a3f6b01783217303628971d8 100644 (file)
@@ -93,6 +93,8 @@ def handle_notification(r, user):
   q.requests = filter(leave_it, q.requests)
   q.write()
   q.dump(open(path.queue_stats_file, "w"))
+  q.dump_html(open(path.queue_html_stats_file, "w"))
+  os.chmod(path.queue_html_stats_file, 0644)
   os.chmod(path.queue_stats_file, 0644)
   q.unlock()
 
index 1ae3d4953dbbe8fa6d8600a1fdb40cd7945b8c47..6ad369e0a9a9085b6a07c7aa74bce26bfd72ac53 100644 (file)
@@ -55,7 +55,9 @@ def store_binary_request(r):
   q.add(r)
   q.write()
   q.dump(open(path.queue_stats_file, "w"))
+  q.dump_html(open(path.queue_html_stats_file, "w"))
   os.chmod(path.queue_stats_file, 0644)
+  os.chmod(path.queue_html_stats_file, 0644)
   q.write_signed(path.req_queue_signed_file)
   os.chmod(path.req_queue_signed_file, 0644)
   q.unlock()
This page took 0.333922 seconds and 4 git commands to generate.