hydra/src/root/machine-status.tt

59 lines
2 KiB
Plaintext

[% WRAPPER layout.tt title="Machine status" %]
[% PROCESS common.tt %]
[% USE format %]
<table class="table table-condensed table-striped">
<thead>
<tr>
<th>Job</th>
<th>System</th>
<th>Build</th>
<th>Step</th>
<th>What</th>
<th>Since</th>
</tr>
</thead>
[% FOREACH m IN machines %]
[% name = m.key ? stripSSHUser(m.key) : "localhost" %]
<thead>
<tr>
<th colspan="6">
<tt [% IF m.value.disabled %]style="text-decoration: line-through;"[% END %]>[% name %]</tt>
[% IF m.value.systemTypes %]
<span class="muted" style="font-weight: normal;">
([% comma=0; FOREACH system IN m.value.systemTypes %][% IF comma; %], [% ELSE; comma = 1; END %]<tt>[% system %]</tt>[% END %])
</span>
[% END %]
[% IF m.value.nrStepsDone %]
<span class="muted" style="font-weight: normal;">
([% m.value.nrStepsDone %] steps done, [% f = format("%.1f"); f(m.value.avgStepBuildTime) %] s/step)
</span>
[% END %]
</th>
</tr>
</thead>
<tbody>
[% idle = 1 %]
[% FOREACH step IN steps %]
[% name2 = step.machine ? stripSSHUser(step.machine) : "localhost" %]
[% IF name == name2 %]
[% idle = 0 %]
<tr>
<td><tt>[% INCLUDE renderFullJobNameOfBuild build=step.build %]</tt></td>
<td><tt>[% step.system %]</tt></td>
<td><a href="[% c.uri_for('/build' step.build.id) %]">[% step.build.id %]</a></td>
<td><a class="row-link" href="[% c.uri_for('/build' step.build.id 'nixlog' step.stepnr 'tail-reload') %]">[% step.stepnr %]</a></td>
<td><tt>[% step.drvpath.match('-(.*)').0 %]</tt></td>
<td style="width: 10em">[% INCLUDE renderDuration duration = curTime - step.starttime %] </td>
</tr>
[% END %]
[% END %]
[% IF idle == 1 %]
<tr><td colspan="6">Idle</td></tr>
[% END %]
</tbody>
[% END %]
</table>
[% END %]