build-remote.pl: Properly close the SSH connection between attempts

This commit is contained in:
Eelco Dolstra 2013-05-10 02:38:05 +02:00
parent be0b9dda31
commit 3a0cc43ac8
2 changed files with 5 additions and 3 deletions

View File

@ -44,6 +44,7 @@ sub closeSSHConnection {
if ($sshStarted) {
system("ssh $sshHost @sshOpts -O exit 2> /dev/null") == 0
or warn "unable to stop SSH master: $?";
$sshStarted = 0;
}
}

View File

@ -195,9 +195,10 @@ REQ: while (1) {
# Connect to the selected machine.
@sshOpts = ("-i", $machine->{sshKeys}, "-x");
$hostName = $machine->{hostName};
last REQ if
openSSHConnection($hostName) &&
system("ssh $hostName @sshOpts nix-builds-inhibited < /dev/null > /dev/null 2>&1") != 0;
if (openSSHConnection($hostName)) {
last REQ if system("ssh $hostName @sshOpts nix-builds-inhibited < /dev/null > /dev/null 2>&1") != 0;
closeSSHConnection;
}
warn "unable to open SSH connection to $hostName, trying other available machines...\n";
$machine->{enabled} = 0;