* More renaming.
[?]
Oct 20, 2009, 12:35 PM
XBU2ODSPGKXUPOV5CFKOBOJLCIU5BMMZ5YVWFR7CP2G5QQZ5GAJACDependencies
- [2]
2BUX775I* More release -> view. - [3]
IN272KZW* Automatically keep all builds in the latest successful release in - [4]
2GK5DOU7* Downloading closures. - [5]
AFTXA575* $HYDRA_DATA environment variable. - [6]
4X6NS66Q* Keep the most recent builds for each job. - [7]
BDSD2JLV* Speed up manifest generation. - [8]
NI5BVF2V* In job inputs of type "build", allow the project and jobset names of - [9]
LZO3C2KI* Hack around those SQLite timeouts: just retry the transaction. - [10]
P5X4P6VK* Renaming "release sets" to "views" (not finished yet). Having - [11]
NEWDDAOF* Allow users to change the value of a build's "keep" flag, which - [12]
WZ3AEJ67* hydra_update_gc_roots.pl registers build outputs that should be kept - [13]
2T42QGZD* Register builds as GC roots so they don't get deleted. - [14]
A63IHCMX* Register GC roots properly. - [15]
PPJN6SDP* paging for releases page
Change contents
- replacement in src/lib/Hydra/Controller/View.pm at line 98
push @results, getRelease($_, $c->stash->{jobs}) foreachgetPrimaryBuildsForReleaseSet($c->stash->{project}, $c->stash->{primaryJob}, $page, $resultsPerPage);push @results, getViewResult($_, $c->stash->{jobs}) foreachgetPrimaryBuildsForView($c->stash->{project}, $c->stash->{primaryJob}, $page, $resultsPerPage); - replacement in src/lib/Hydra/Controller/View.pm at line 141
my $latest = getLatestSuccessfulRelease(my $latest = getLatestSuccessfulViewResult( - replacement in src/lib/Hydra/Controller/View.pm at line 161
$c->stash->{result} = getRelease($primaryBuild, $c->stash->{jobs});$c->stash->{result} = getViewResult($primaryBuild, $c->stash->{jobs}); - replacement in src/lib/Hydra/Helper/Nix.pm at line 13
getPrimaryBuildsForReleaseSetgetPrimaryBuildsForView - replacement in src/lib/Hydra/Helper/Nix.pm at line 15
getRelease getLatestSuccessfulRelease );getViewResult getLatestSuccessfulViewResult ); - replacement in src/lib/Hydra/Helper/Nix.pm at line 138
$attr =~ /^([\w-]+)=([\w-]*)$/ or die "invalid attribute in release set: $attr";$attr =~ /^([\w-]+)=([\w-]*)$/ or die "invalid attribute in view: $attr"; - replacement in src/lib/Hydra/Helper/Nix.pm at line 152
my ($project, $primaryJob) = @_;my $allPrimaryBuilds = $project->builds->search({ jobset => $primaryJob->get_column('jobset'), job => $primaryJob->get_column('job'), finished => 1 },{ join => 'resultInfo', order_by => "timestamp DESC", '+select' => ["resultInfo.releasename", "resultInfo.buildstatus"], '+as' => ["releasename", "buildstatus"], where => \ attrsToSQL($primaryJob->attrs, "me.id")});return $allPrimaryBuilds;my ($project, $primaryJob) = @_;my $allPrimaryBuilds = $project->builds->search({ jobset => $primaryJob->get_column('jobset'), job => $primaryJob->get_column('job'), finished => 1 },{ join => 'resultInfo', order_by => "timestamp DESC", '+select' => ["resultInfo.releasename", "resultInfo.buildstatus"], '+as' => ["releasename", "buildstatus"], where => \ attrsToSQL($primaryJob->attrs, "me.id")});return $allPrimaryBuilds; - edit in src/lib/Hydra/Helper/Nix.pm at line 162
- replacement in src/lib/Hydra/Helper/Nix.pm at line 166
return scalar(allPrimaryBuilds($project, $primaryJob)) ;return scalar(allPrimaryBuilds($project, $primaryJob)); - replacement in src/lib/Hydra/Helper/Nix.pm at line 169
sub getPrimaryBuildsForReleaseSet {sub getPrimaryBuildsForView { - edit in src/lib/Hydra/Helper/Nix.pm at line 183
- edit in src/lib/Hydra/Helper/Nix.pm at line 204
- replacement in src/lib/Hydra/Helper/Nix.pm at line 226
sub getRelease {sub getViewResult { - replacement in src/lib/Hydra/Helper/Nix.pm at line 234
# The timestamp of the release is the highest timestamp of all# The timestamp of the view result is the highest timestamp of all - replacement in src/lib/Hydra/Helper/Nix.pm at line 269
sub getLatestSuccessfulRelease {sub getLatestSuccessfulViewResult { - replacement in src/lib/Hydra/Helper/Nix.pm at line 272
foreach my $build (getPrimaryBuildsForReleaseSet($project, $primaryJob)) {return $build if getRelease($build, $jobs)->{status} == 0;foreach my $build (getPrimaryBuildsForView($project, $primaryJob)) {return $build if getViewResult($build, $jobs)->{status} == 0; - replacement in src/script/hydra_update_gc_roots.pl at line 60
# Go over all releases in this project.# Go over all views in this project. - replacement in src/script/hydra_update_gc_roots.pl at line 62
foreach my $releaseSet ($project->releasesets->all) {print STDERR "*** looking for builds to keep in release set ", $project->name, ":", $releaseSet->name, "\n";foreach my $view ($project->views->all) {print STDERR "*** looking for builds to keep in view ", $project->name, ":", $view->name, "\n"; - replacement in src/script/hydra_update_gc_roots.pl at line 65
(my $primaryJob) = $releaseSet->releasesetjobs->search({isprimary => 1});my $jobs = [$releaseSet->releasesetjobs->all];(my $primaryJob) = $view->viewjobs->search({isprimary => 1});my $jobs = [$view->viewjobs->all]; - replacement in src/script/hydra_update_gc_roots.pl at line 68
# Keep all builds belonging to the most recent successful release.my $latest = getLatestSuccessfulRelease($project, $primaryJob, $jobs);# Keep all builds belonging to the most recent successful view result.my $latest = getLatestSuccessfulViewResult($project, $primaryJob, $jobs); - replacement in src/script/hydra_update_gc_roots.pl at line 71
print STDERR "keeping latest successful release ", $latest->id, " (", $latest->get_column('releasename'), ")\n";my $release = getRelease($latest, $jobs);keepBuild $_->{build} foreach @{$release->{jobs}};print STDERR "keeping latest successful view result ", $latest->id, " (", $latest->get_column('releasename'), ")\n";my $result = getViewResult($latest, $jobs);keepBuild $_->{build} foreach @{$result->{jobs}};