From 107505e13ac83850fe01ef3e1a35e5bb2ab1ef52 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 23 May 2013 14:39:58 -0400 Subject: [PATCH] build-remote.pl: Copy all outputs in one operation --- scripts/build-remote.pl.in | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/build-remote.pl.in b/scripts/build-remote.pl.in index dd56b600c7..c8e73cebb4 100755 --- a/scripts/build-remote.pl.in +++ b/scripts/build-remote.pl.in @@ -289,13 +289,13 @@ if (system("exec ssh $hostName @sshOpts '(read; kill -INT -\$\$) <&0 & exec nix- # Copy the output from the build machine. -foreach my $output (@outputs) { +my @outputs2 = grep { !isValidPath($_) } @outputs; +if (scalar @outputs2 > 0) { my $maybeSignRemote = ""; $maybeSignRemote = "--sign" if $UID != 0; - next if isValidPath($output); - system("exec ssh $hostName @sshOpts 'nix-store --export $maybeSignRemote $output'" . - "| NIX_HELD_LOCKS=$output @bindir@/nix-store --import > /dev/null") == 0 - or die "cannot copy $output from $hostName: $?"; + system("exec ssh $hostName @sshOpts 'nix-store --export $maybeSignRemote @outputs2'" . + "| NIX_HELD_LOCKS='@outputs2' @bindir@/nix-store --import > /dev/null") == 0 + or die("cannot copy paths " . join(", ", @outputs) . " from `$hostName': $?"); }