]> xenbits.xensource.com Git - people/royger/osstest.git/commitdiff
cr-publish-flight-logs: Refactor rsync -e option construction
authorIan Jackson <ian.jackson@eu.citrix.com>
Wed, 11 Jul 2018 11:07:47 +0000 (12:07 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Wed, 11 Jul 2018 14:55:15 +0000 (15:55 +0100)
Previously this was hardcoded.  Now we make a variable @ssh, and use
rsync's quoting scheme to transform it into a value suitable for -e.

No overall functional change, although now the rsync command contains
additional quotes in the -e option.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
cr-publish-flight-logs

index 539318dc692605f8f405ca80d70fcdd4b39f0dd5..9e1365259b585ffeb0fac1981031a98bd41e0807 100755 (executable)
@@ -61,8 +61,9 @@ sub copydir ($$) {
     return unless $c{"${cfgbase}Publish"};
     my $src = $c{$cfgbase}.$subdir."/";
     my $dst = $c{"${cfgbase}Publish"}.$subdir;
+    my @ssh = qw(ssh -o batchmode=yes);
     my @cmd= qw(rsync --compress --compress-level=9 --stats --delete -auH);
-    push @cmd, '-e', 'ssh -o batchmode=yes';
+    push @cmd, '-e', join(' ', map { s/\'/''/g; "'$_'"; } @ssh);
     #--bwlimit=50
     push @cmd, $src, $dst;
     print "+ @cmd\n";