build-remote.pl: Copy all outputs in one operation
This commit is contained in:
		
							parent
							
								
									72d8209548
								
							
						
					
					
						commit
						107505e13a
					
				
					 1 changed files with 5 additions and 5 deletions
				
			
		| 
						 | 
				
			
			@ -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': $?");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue