3 Copyright (c) 2003-2010, Andrew Dunstan
5 See accompanying License file for license details
10 perl = '/img/camel.png',
11 #python = '/img/python.png',
12 #debug = '/img/bug.png',
13 #pam => '/img/pam.png',
14 #cassert => '/img/cassert.png',
15 openssl => '/img/ssl_icon.gif',
16 gnutls => '/img/gnutls_icon.gif',
17 #nls => '/img/translateicon.gif',
18 #krb5 => '/img/krb.gif',
19 #gssapi => '/img/gssapi.gif',
20 #tcl => '/img/tcl.png',
21 #vpath => '/img/vpath.png',
22 #xml => '/img/xml.png',
23 #'thread-safety' => '/img/threads.gif',
24 #'integer-datetimes' = '/img/days.png',
25 mysql = '/img/mysql_logo.png',
28 [%- 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 %][%#
31 [%- 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 %]" />
32 [%- ELSE %] [% END ; END -%]
33 [%- BLOCK cl %] class="[% SWITCH bgfor.replace('-.*','') -%]
34 [%- CASE 'OK' %]pass[% CASE 'ContribCheck' %]warn[% CASE [ 'Check' 'InstallCheck' ] %]warnx[% CASE %]fail[% END %]"
37 title = 'Exim BuildFarm Status'
41 <h1>Exim BuildFarm Status</h1>
43 Shown here is the latest status of each farm member
44 for each branch it has reported on in the last 30 days.
47 Use the farm member link for history of that member
48 on the relevant branch.
50 <table><tr><th class="head" rowspan="2">Legend</th>
51 [% FOREACH flagset IN flag_imgs %]
52 <td><img src="[% flagset.value %]" title="[% flagset.key %]" alt="[% flagset.key %]" height="16" width="16" class="inline" align="center"/> = [% flagset.key %]</td>
53 [% IF loop.count == 7 %]</tr><tr>[% END %]
57 <table cellspacing="0">
59 [% FOREACH row IN statrows %]
60 [% IF row.branch != brch ; brch = row.branch %]
61 <tr><th class="head" colspan="5">Branch: [% brch %]</th></tr>
62 <tr><th colspan="2">Alias</th><th>System</th><th>Status</th><th>Flags</th></tr>
64 <tr [% PROCESS cl bgfor=row.stage %]>
66 href="show_history.pl?nm=[% row.sysname %]&br=[% row.branch %]"
68 >[% row.sysname %]</a></td>
69 <td>[% PROCESS sysnotes %]</td>
70 <td><span class="opsys">[% row.operating_system %]
71 [% row.os_version %]</span> <span class="compiler">
73 [% row.compiler_version %]</span> <span class="arch">
74 [%- row.architecture %]</span></td>
76 [%- row.when_ago | replace('\s',' ') %] ago
78 [[% row.git_head_ref.substr(0,7) %]]
79 <a href="show_log.pl?nm=
80 [%- row.sysname %]&dt=
81 [%- row.snapshot | uri %]">
82 [%- IF row.stage != 'OK' %]Details[% ELSE %]Config[% END -%]</a></td>
84 <td class="flags">[% FOREACH flag IN row.build_flags.split().sort() ; PROCESS img ; END %]</td>