* Closure downloads: don't include the product number; it's not needed.

This commit is contained in:
Eelco Dolstra 2009-02-23 09:34:29 +00:00
parent 9013e97534
commit 5f8dcab854
2 changed files with 9 additions and 11 deletions

View file

@ -118,7 +118,7 @@ sub queue :Local {
} }
sub showJobStatus :Local { sub showJobStatus {
my ($c, $builds) = @_; my ($c, $builds) = @_;
$c->stash->{template} = 'jobstatus.tt'; $c->stash->{template} = 'jobstatus.tt';
@ -683,20 +683,18 @@ sub download :Local {
sub closure :Local { sub closure :Local {
my ($self, $c, $buildId, $productnr) = @_; my ($self, $c, $buildId) = @_;
my $build = getBuild($c, $buildId); my $build = getBuild($c, $buildId);
return error($c, "Build with ID $buildId doesn't exist.") if !defined $build; return error($c, "Build $buildId doesn't exist.") if !defined $build;
my $product = $build->buildproducts->find({productnr => $productnr}); return error($c, "Build $buildId cannot be downloaded as a closure.")
return error($c, "Build $buildId doesn't have a product $productnr.") if !defined $product; if !$build->buildproducts->find({type => "nix-build"});
return error($c, "Product is not a Nix build.") if $product->type ne "nix-build"; return error($c, "Path " . $build->outpath . " is no longer available.") unless isValidPath($build->outpath);
return error($c, "Path " . $product->path . " is no longer available.") unless isValidPath($product->path);
$c->stash->{current_view} = 'Hydra::View::NixClosure'; $c->stash->{current_view} = 'Hydra::View::NixClosure';
$c->stash->{storePath} = $product->path; $c->stash->{storePath} = $build->outpath;
$c->stash->{name} = $build->nixname; $c->stash->{name} = $build->nixname;
# !!! quick hack; this is to make HEAD requests return the right # !!! quick hack; this is to make HEAD requests return the right

View file

@ -9,7 +9,7 @@
[% SWITCH product.type %] [% SWITCH product.type %]
[% CASE "nix-build" %] [% CASE "nix-build" %]
<a href="[% c.uri_for('/closure' build.id product.productnr) %]"> <a href="[% c.uri_for('/closure' build.id) %]">
<img src="/static/images/nix-build.png" alt="Source" /> <img src="/static/images/nix-build.png" alt="Source" />
Nix build of path <tt>[% product.path %]</tt> Nix build of path <tt>[% product.path %]</tt>
</a> </a>
@ -23,7 +23,7 @@
or to download and unpack in one command: or to download and unpack in one command:
<pre>$ curl [% c.uri_for('/closure' build.id product.productnr) %] | gunzip | nix-store --import</pre> <pre>$ curl [% c.uri_for('/closure' build.id) %] | gunzip | nix-store --import</pre>
<p>The package can then be found in the path <tt>[% <p>The package can then be found in the path <tt>[%
product.path %]</tt>. Youll probably also want to do product.path %]</tt>. Youll probably also want to do