fix organization
[buildfarm-server.git] / trunk / templates / status.tt
diff --git a/trunk/templates/status.tt b/trunk/templates/status.tt
new file mode 100644 (file)
index 0000000..875c988
--- /dev/null
@@ -0,0 +1,78 @@
+[%
+ flag_imgs = {
+     perl = '/img/camel.png',
+     python = '/img/python.png',
+     debug = '/img/bug.png',
+     pam => '/img/pam.png',
+     cassert => '/img/cassert.png',
+     openssl => '/img/ssl_icon.gif',
+     nls => '/img/translateicon.gif',
+     krb5 => '/img/krb.gif',
+     tcl => '/img/tcl.png',
+     vpath => '/img/vpath.png',
+     xml => '/img/xml.png',
+     'thread-safety' => '/img/threads.gif',
+     'integer-datetimes' = '/img/days.png',
+     git => '/img/git.png',
+     }
+-%]
+[%- BLOCK img ; IF flag == 'depend' or flag == 'gnu-ld' ; ; ELSIF flag_imgs.$flag %]<img src="[% flag_imgs.$flag %]" title="[% flag %]" alt="[% flag %]" height="16" width="16" class="inline" align="bottom" />  [% ELSE %][%#
+                                                                                                                                                                                                         flag ; ' '
+%][% END ; END -%]
+[%- BLOCK sysnotes ; IF row.sys_notes %]<img src="/img/notes.png" height="16" width="16" title="[% row.sys_notes_ts.replace(' .*','') | html %]: [% row.sys_notes | html %]" />
+[%- ELSE %]&nbsp;[% END ; END -%]
+[%- BLOCK cl %] class="[% SWITCH bgfor.replace('-.*','') -%]
+  [%- CASE 'OK' %]pass[% CASE 'ContribCheck' %]warn[% CASE [ 'Check' 'InstallCheck' ] %]warnx[% CASE %]fail[% END %]"
+[%- END -%]
+[% WRAPPER 'page.tt' 
+       title = 'PostgreSQL BuildFarm Status'
+       bodyclass = 'none'
+       pagebutton = 'status'
+%]
+    <h1>PostgreSQL BuildFarm Status</h1>
+    <p>
+      Shown here is the latest status of each farm member 
+      for each branch it has reported on in the last 30 days.
+    </p>
+    <p>
+       Use the farm member link for history of that member 
+       on the relevant branch.
+    </p>
+<table><tr><th class="head" rowspan="2">Legend</th>
+[% FOREACH flagset IN flag_imgs %]
+<td><img src="[% flagset.value %]" title="[% flagset.key %]" alt="[% flagset.key %]" height="16" width="16" class="inline"  align="center"/> =  [% flagset.key %]</td>
+[% IF loop.count == 7 %]</tr><tr>[% END %]
+[% END %]
+</tr></table>
+<br />
+    <table cellspacing="0">
+[% brch = "" %]
+[% FOREACH row IN statrows %]
+[% IF row.branch != brch ; brch = row.branch %]
+<tr><th class="head" colspan="5">Branch: [% brch %]</th></tr>
+<tr><th colspan="2">Alias</th><th>System</th><th>Status</th><th>Flags</th></tr>
+[% END %]
+<tr [% PROCESS cl bgfor=row.stage %]>
+    <td><a 
+    href="show_history.pl?nm=[% row.sysname %]&amp;br=[% row.branch %]"
+    title="History"
+    >[% row.sysname %]</a></td>
+    <td>[% PROCESS sysnotes %]</td>
+    <td><span class="opsys">[% row.operating_system %]
+            [% row.os_version %]</span> <span class="compiler">
+            [%- row.compiler %]
+            [% row.compiler_version %]</span> <span class="arch">
+            [%- row.architecture %]</span></td>
+    <td class="status">
+            [%- row.when_ago | replace('\s','&nbsp;') %]&nbsp;ago&nbsp;
+            [% row.stage -%]
+            <a href="show_log.pl?nm=
+               [%- row.sysname %]&amp;dt=
+               [%- row.snapshot | uri %]">
+                [%- IF row.stage != 'OK' %]Details[% ELSE %]Config[% END -%]</a></td>
+
+    <td class="flags">[% FOREACH flag IN row.build_flags.split().sort() ; PROCESS img ; END %]</td>
+</tr>
+[% END %]
+    </table>
+[% END %]