* Unify rendering of finished and scheduled builds.
[?]
Nov 26, 2008, 5:43 PM
JLDUSNUOOQNL63BOPXIWZOWFRQ5X35RWG33PJB3J3KMR6QR7TN7QCDependencies
- [2]
H7CNGK4O* Log evaluation errors etc. in the DB. - [3]
TQKGQ5R3 - [4]
DVNWJXWW* Generic declaration of build products. - [5]
K5BEBWKM - [6]
PBFZEQLZ - [7]
ELCI5T2A* Show the latest build for each job. - [8]
E2ZY5TE5 - [9]
US27ZTX5* HydraFrontend -> Hydra. - [10]
HK32XC42 - [11]
MOCEUXZA* Support serving products that are directories (such as manuals or - [12]
BD3GRK4B* Get rid of "positive failures" and separate log phases. - [13]
L2E6EVE2* Merged the Build and Job tables. - [14]
BVOPAMLS - [15]
L5VIEXSC* Allow downloading of build products. - [16]
J5UVLXOK* Start of a basic Catalyst web interface. - [17]
UVMFS73T* Some jQuery / CSS hackery. - [18]
WYN733ST* Store build duration, handle cached builds. - [19]
X27GNHDV* Basic job info in the database. - [20]
BA46C5LN* Pretty-print the logs. - [21]
TULPZ62Y* Perform builds in parallel. - [22]
WHAFVCEI - [23]
UAPS46BQ - [24]
2AUODJBT - [25]
GCHNNFZP - [26]
7YBYT2LQ - [27]
AS5PAYLI - [28]
W6DC6K4I* Happy Javascript hacking. - [29]
67P45PY4 - [30]
M552HLIA* Support variant builds. - [31]
JD27RBKM - [32]
7LKUAIGC - [33]
CLJQCY2X* Store info about all the build actions and allow them to be - [34]
IK53RV4V - [35]
2GK5DOU7* Downloading closures. - [36]
LQNBKF3D
Change contents
- replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 21
my ( $self, $c ) = @_;my ($self, $c) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 50
my ( $self, $c ) = @_;my ($self, $c) = @_; - edit in src/Hydra/lib/Hydra/Controller/Root.pm at line 52
$c->stash->{scheduled} = [$c->model('DB::Builds')->search({finished => 0}, {join => 'schedulingInfo'})]; # !!! - edit in src/Hydra/lib/Hydra/Controller/Root.pm at line 61
}sub queue :Local {my ($self, $c) = @_;$c->stash->{template} = 'queue.tt';$c->stash->{queue} = [$c->model('DB::Builds')->search({finished => 0}, {join => 'schedulingInfo', order_by => ["priority DESC", "timestamp"]})]; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 193
my ( $self, $c, $projectName, $subcommand ) = @_;my ($self, $c, $projectName, $subcommand) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 248
my ( $self, $c, $subcommand ) = @_;my ($self, $c, $subcommand) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 274
my ( $self, $c, $projectName, $jobName ) = @_;my ($self, $c, $projectName, $jobName) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 289
my ( $self, $c ) = @_;my ($self, $c) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 295
my ( $self, $c, $id ) = @_;my ($self, $c, $id) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 316
my ( $self, $c, $id ) = @_;my ($self, $c, $id) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 332
my ( $self, $c, $id, $stepnr ) = @_;my ($self, $c, $id, $stepnr) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 365
my ( $self, $c, $id, $productnr, $filename, @path ) = @_;my ($self, $c, $id, $productnr, $filename, @path) = @_; - replacement in src/Hydra/lib/Hydra/Controller/Root.pm at line 399
my ( $self, $c, $buildId, $productnr ) = @_;my ($self, $c, $buildId, $productnr) = @_; - file deletion: short-build-info.tt short-build-info.tt[3.857]→[3.1130:1173](∅→∅),[3.1173]→[3.2074:2074](∅→∅),[3.7332]→[3.2540:2583](∅→∅),[3.2583]→[3.2074:2074](∅→∅)
[% USE date %]<tr><td><img src="/static/images/success.gif" />[% ELSE %]<img src="/static/images/failure.gif" />[% END %]</td><td><a href="[% c.uri_for('/build' build.id) %]">[% build.id %]</a></td><td><tt>[% build.system %]</tt></td><td>[% date.format(build.timestamp, '%Y-%m-%d %H:%M:%S') %]</td><td>[% build.description %]</td></tr><td><a href="[% c.uri_for('/project' build.project.name) %]"><tt>[% build.project.name %]</tt></a></td><td><a href="[% c.uri_for('/job' build.project.name build.attrname) %]"><tt>[% build.attrname %]</tt></a></td>[% IF build.resultInfo.buildstatus == 0 %] - edit in src/Hydra/root/common.tt at line 1
[% USE date %] - edit in src/Hydra/root/common.tt at line 15
[% USE date %] - edit in src/Hydra/root/common.tt at line 18
[% END %][% BLOCK renderBuildList %]<table class="tablesorter"><thead><tr>[% IF !hideResultInfo %]<th></th>[% END %]<th>#</th>[% IF showSchedulingInfo %]<th>Priority</th>[% END %]<th>Project</th><th>Job</th><th>System</th><th>Timestamp</th><th>Description</th></tr></thead><tbody>[% FOREACH build IN builds -%]<tr [% IF build.schedulingInfo.busy %]class="runningJob"[% END %] >[% IF !hideResultInfo %]<td>[% IF build.resultInfo.buildstatus == 0 %]<img src="/static/images/success.gif" />[% ELSE %]<img src="/static/images/failure.gif" />[% END %]</td>[% END %]<td><a href="[% c.uri_for('/build' build.id) %]">[% build.id %]</a></td>[% IF showSchedulingInfo %]<td>[% build.schedulingInfo.priority %]</td>[% END %]<td><a href="[% c.uri_for('/project' build.project.name) %]"><tt>[% build.project.name %]</tt></a></td><td><a href="[% c.uri_for('/job' build.project.name build.attrname) %]"><tt>[% build.attrname %]</tt></a></td><td><tt>[% build.system %]</tt></td><td>[% date.format(build.timestamp, '%Y-%m-%d %H:%M:%S') %]</td><td>[% build.description %]</td></tr>[% END -%]</tbody></table> - replacement in src/Hydra/root/index.tt at line 2
[% USE date %][% PROCESS common.tt %] - edit in src/Hydra/root/index.tt at line 6[3.1278]→[3.3349:3350](∅→∅),[3.3549]→[3.3349:3350](∅→∅),[3.3349]→[3.3349:3350](∅→∅),[3.3350]→[3.3550:3566](∅→∅),[3.3566]→[3.1279:1349](∅→∅),[3.3365]→[3.1279:1349](∅→∅),[3.1349]→[3.400:401](∅→∅),[3.3365]→[3.400:401](∅→∅),[3.10776]→[3.400:401](∅→∅),[3.401]→[3.3366:3404](∅→∅),[3.3404]→[3.0:122](∅→∅),[3.122]→[3.3516:3537](∅→∅),[3.3516]→[3.3516:3537](∅→∅),[3.3537]→[3.6775:7072](∅→∅),[3.7072]→[3.1350:1397](∅→∅),[3.1397]→[3.7122:7281](∅→∅),[3.7122]→[3.7122:7281](∅→∅),[3.7281]→[3.3865:3912](∅→∅),[3.3865]→[3.3865:3912](∅→∅)
<h2>Queue</h2>[% IF scheduled.size == 0 %]<p>The queue is empty.</p>[% ELSE %]<table class="tablesorter"><thead><tr><th>#</th><th>Priority</th><th>Project</th><th>Job</th><th>System</th><th>Timestamp</th><th>Description</th></tr></thead><tbody>[% FOREACH build IN scheduled -%]<tr [% IF build.schedulingInfo.busy %]class="runningJob"[% END %] ><td><a href="[% c.uri_for('/build' build.id) %]">[% build.id %]</a></td><td>[% build.schedulingInfo.priority %]</td><td><tt>[% build.project.name %]</tt></td><td><tt>[% build.attrname %]</tt></td><td><tt>[% build.system %]</tt></td><td>[% date.format(build.timestamp, '%Y-%m-%d %H:%M:%S') %]</td><td>[% build.description %]</td></tr>[% END -%]</tbody></table> - edit in src/Hydra/root/index.tt at line 7
[% END %] - edit in src/Hydra/root/index.tt at line 8
- replacement in src/Hydra/root/index.tt at line 12[3.422]→[3.881:919](∅→∅),[3.919]→[3.3408:3522](∅→∅),[3.714]→[3.1003:1133](∅→∅),[3.3522]→[3.1003:1133](∅→∅),[3.4185]→[3.1003:1133](∅→∅),[3.1003]→[3.1003:1133](∅→∅),[3.1133]→[3.615:624](∅→∅),[3.615]→[3.615:624](∅→∅)
<table class="tablesorter"><thead><tr><th></th><th>#</th><th>Project</th><th>Job</th><th>System</th><th>Timestamp</th><th>Description</th></tr></thead><tbody>[% FOREACH build IN latestBuilds -%][% INCLUDE "short-build-info.tt" %][% END -%]</tbody></table>[% PROCESS renderBuildList builds=latestBuilds %] - replacement in src/Hydra/root/index.tt at line 19[3.10798]→[3.1134:1172](∅→∅),[3.1172]→[3.3523:3637](∅→∅),[3.814]→[3.1255:1382](∅→∅),[3.3637]→[3.1255:1382](∅→∅),[3.1255]→[3.1255:1382](∅→∅),[3.1382]→[3.11164:11173](∅→∅),[3.11164]→[3.11164:11173](∅→∅)
<table class="tablesorter"><thead><tr><th></th><th>#</th><th>Project</th><th>Job</th><th>System</th><th>Timestamp</th><th>Description</th></tr></thead><tbody>[% FOREACH build IN allBuilds -%][% INCLUDE "short-build-info.tt" %][% END -%]</tbody></table>[% PROCESS renderBuildList builds=allBuilds %] - edit in src/Hydra/root/job.tt at line 2
[% PROCESS common.tt %] - replacement in src/Hydra/root/job.tt at line 6
<table class="tablesorter"><thead><tr><th></th><th>Id</th><th>Project</th><th>Job</th><th>System</th><th>Timestamp</th><th>Description</th></tr></thead><tbody>[% FOREACH build IN builds -%][% INCLUDE "short-build-info.tt" %][% END -%]</tbody></table>[% PROCESS renderBuildList builds=builds %] - replacement in src/Hydra/root/static/css/hydra.css at line 188
tr.runningJob {.runningJob {