* Added a page to quickly see all failed builds and failed evaluations
[?]
Apr 8, 2009, 10:08 PM
75XUS62YF7OK4S45RCZ5OOASXEBIEDNDBYEEMOCBDHVXV4GA3NLQCDependencies
- [2]
ODNCGFQ5* Improved the navigation bar: don't include all projects (since that - [3]
SJN2QPWH* Big speed-up of the job status page and the channel generation (such - [4]
3HZY24CX* Make jobsets viewable under - [5]
GNIEG2GC* Disambiguate jobs by jobset name. I.e. jobs with the same name in - [6]
DEMSSSB2* Controller for jobs which inherits all actions in ListBuilds. So - [7]
UWVMQIAC* Refactoring. - [*]
FPK5LF53* Put the project-related actions in a separate controller. Put the - [*]
J5UVLXOK* Start of a basic Catalyst web interface. - [*]
IK53RV4V - [*]
D5QIOJGP* Move everything up one directory.
Change contents
- edit in src/lib/Hydra/Base/Controller/ListBuilds.pm at line 15
}# A convenient way to see all the errors - i.e. things demanding# attention - at a glance.sub errors : Chained('get_builds') PathPart Args(0) {my ($self, $c) = @_;$c->stash->{template} = 'errors.tt';$c->stash->{brokenJobsets} =[$c->stash->{allJobsets}->search({errormsg => {'!=' => ''}})]if defined $c->stash->{allJobsets};$c->stash->{brokenJobs} =[$c->stash->{allJobs}->search({errormsg => {'!=' => ''}})]if defined $c->stash->{allJobs};$c->stash->{brokenBuilds} =[joinWithResultInfo($c, $c->stash->{jobStatus})->search({buildstatus => {'!=' => 0}})]; - replacement in src/lib/Hydra/Controller/Job.pm at line 13
$c->stash->{job} = $c->model('DB::Jobs')->find({project => $projectName, jobset => $jobsetName, name => $jobName})$c->stash->{job_} = $c->model('DB::Jobs')->search({project => $projectName, jobset => $jobsetName, name => $jobName});$c->stash->{job} = $c->stash->{job_}->single - edit in src/lib/Hydra/Controller/Job.pm at line 38
$c->stash->{allJobs} = $c->stash->{job_}; - replacement in src/lib/Hydra/Controller/Jobset.pm at line 18
$c->stash->{jobset} = $project->jobsets->find({name => $jobsetName})$c->stash->{jobset_} = $project->jobsets->search({name => $jobsetName});$c->stash->{jobset} = $c->stash->{jobset_}->single - edit in src/lib/Hydra/Controller/Jobset.pm at line 42
$c->stash->{allJobsets} = $c->stash->{jobset_};$c->stash->{allJobs} = $c->stash->{jobset}->jobs; - edit in src/lib/Hydra/Controller/Project.pm at line 175
$c->stash->{allJobsets} = $c->stash->{project}->jobsets;$c->stash->{allJobs} = $c->stash->{project}->jobs; - edit in src/lib/Hydra/Controller/Root.pm at line 245
$c->stash->{allJobsets} = $c->model('DB::Jobsets');$c->stash->{allJobs} = $c->model('DB::Jobs'); - edit in src/root/common.tt at line 34
[% BLOCK renderFullJobsetName %]<tt>[% INCLUDE renderProjectName %]:[% INCLUDE renderJobsetName %]</tt>[% END %] - file addition: errors.tt[12.1486]
[% WRAPPER layout.tt title="Errors" %][% PROCESS common.tt %]<h1>Errors</h1><p>This page provides a quick way to see how FUBARed your packagesare. It shows job expressions that don’t evaluate properly and jobsthat don’t build.</p>[% haveErrors = 0 %][% IF brokenJobsets && brokenJobsets.size > 0; haveErrors = 1 %]<h2>Evaluation errors in jobsets</h2><table class="buildList tablesorter"><thead><tr><th>Name</th><th>Error</th></tr></thead><tdata>[% FOREACH j IN brokenJobsets %]<tr><td>[% INCLUDE renderFullJobsetName project=j.project.name jobset=j.name %]</td><td><pre class="multiLineMsg error">[% HTML.escape(j.errormsg) %]</pre></td></tr>[% END %]</tdata></table>[% END %][% IF brokenJobs && brokenJobs.size > 0; haveErrors = 1 %]<h2>Evaluation errors in jobs</h2><table class="buildList tablesorter"><thead><tr><th>Name</th><th>Error</th></tr></thead><tdata>[% FOREACH j IN brokenJobs %]<tr><td>[% INCLUDE renderFullJobName project=j.project.name jobset=j.jobset.name job=j.name %]</td><td><pre class="multiLineMsg error">[% HTML.escape(j.errormsg) %]</pre></td></tr>[% END %]</tdata></table>[% END %][% IF brokenBuilds && brokenBuilds.size > 0; haveErrors = 1 %]<h2>Broken builds</h2>[% INCLUDE renderBuildList builds=brokenBuilds %][% END %][% IF !haveErrors %]<p><strong>There are currently no problems.</strong></p>[% END %][% END %] - edit in src/root/navbar.tt at line 40
[% INCLUDE makeLinkuri = c.uri_for(c.controller('Root').action_for('errors'))title = "Errors" %] - edit in src/root/navbar.tt at line 57
[% INCLUDE makeLinkuri = c.uri_for(c.controller('Project').action_for('errors'), [project.name])title = "Errors" %] - edit in src/root/navbar.tt at line 75
[% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('errors'), [project.name, jobset.name])title = "Errors" %] - edit in src/root/navbar.tt at line 93
[% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('errors'), [project.name, jobset.name, job.name])title = "Errors" %]