[%# Copyright (c) 2003-2010, Andrew Dunstan Copyright (c) 2022, The Exim Maintainers See accompanying License file for license details -%] [%- BLOCK cl %] class="[% SWITCH bgfor -%] [%- CASE 'OK' %]pass[% CASE 'ContribCheck' %]warn[% CASE [ 'Check' 'InstallCheck' ] %]warnx[% CASE %]fail[% END %]" [%- END -%] [% WRAPPER 'page.tt' title = 'Exim BuildFarm History' bodyclass = 'history' pagebutton = 'none' %]

Exim BuildFarm Status History

System Detail
Farm member[% member %]
OS[% statrows.0.operating_system %] [% statrows.0.os_version %]
Compiler[% statrows.0.compiler %] [% statrows.0.compiler_version %]
Architecture[% statrows.0.architecture %]
Owner[% statrows.0.owner_email %]
[% IF statrows.0.sys_notes %]
System Notes Date Notes
[% statrows.0.sys_notes_date %] [% statrows.0.sys_notes %]
[% END %]

Branch: [% branch %][% IF statrows.size >= hm %] (last [% hm %] entries shown)[% END %]

[% res_imgs = { P = '/img/t_good.gif', F => '/img/t_fail.gif', '.' => '/img/t_notdone.gif', } -%] [%# The IF-backstop is ugly and I'm not understanding why the res_img lookup does not for for '.' -%] [%- BLOCK colour ; IF res_imgs.$c.defined ; res_imgs.$c ; ELSE %]/img/t_notdone.gif [% END; END %] [%- BLOCK colourbar %][%- END -%] [% BLOCK stdet %] [%- row.when_ago | replace('\s',' ') %] ago  [% row.stage -%] [[% row.git_head_ref.substr(0,7) %]] [%- IF row.stage != 'OK' %]Details[% ELSE %]Config[% END -%] [% FOREACH range IN row.log_text ; r = range.split(' '); c = r.0; st = r.1; w = r.2; PROCESS colourbar; END %] [% END %] [% FOREACH xrow IN statrows %][% PROCESS stdet row=xrow %][% END %]
[% END %]