Mercurial > hg > cc > azure
diff master/bin/internal/invoke.sh @ 30:9275e2a8b5e2
hacking to get id into wbash.sh, maybe buggy?
author | Henry S. Thompson <ht@markup.co.uk> |
---|---|
date | Mon, 19 Nov 2018 18:32:30 +0000 |
parents | 2fbefb8d1a9e |
children |
line wrap: on
line diff
--- a/master/bin/internal/invoke.sh Mon Nov 19 18:31:21 2018 +0000 +++ b/master/bin/internal/invoke.sh Mon Nov 19 18:32:30 2018 +0000 @@ -1,11 +1,20 @@ #!/bin/bash # Helper for ../wrun, q.v. -# Usage: invoke.sh [-x] me cmd ifile id port ip [args...] +# Usage: invoke.sh [-d] [-w] [-x] me cmd ifile id port ip [args...] # Runs # cmd [id] args... # via ssh to ip:port # If ifile is not /dev/null, feed in as stdin +# If -d, echo command line to stderr +# If -w, wrap command in nohup and wait for result # Unless -x, worker id is passed as first arg +echo $@ 1>&2 +echo "$@" 1>&2 +if [ "$1" = "-d" ] +then + shift + debug=1 +fi if [ "$1" = "-w" ] then shift @@ -14,18 +23,18 @@ if [ "$1" = "-x" ] then shift - id= + tellid= me= else me=$1 - id=$4 + tellid=$4 fi cmd="$2" ifile=$3 port=$5 ip=$6 shift 6 -echo "#$(date)#$cmd#$ifile#$id#$port#$ip#$@#" 1>&2 +echo "#$(date)#$cmd#$ifile#$tellid#$port#$ip#$@#" 1>&2 if [ "$ifile" != "/dev/null" ] then echo "# from $ifile" 1>&2 @@ -33,8 +42,13 @@ fi || echo scp failed, status=$? 1>&2 if [ "$wait" ] then - ssh -tt -p $port $ip "nohup $cmd $id $me ""$@"" > nohup.cc" + cs="nohup $cmd $tellid $me "$@" > nohup.cc" else - ssh -p $port $ip "$cmd $id $me ""$@" -fi || echo ssh failed, status=$? 1>&2 + cs="$cmd $tellid $me ""$@" +fi +if [ "$debug" ] +then + echo ssh -tt -p $port $ip $cs 1>&2 +fi +ssh -tt -p $port $ip "$cs" || echo ssh failed, status=$? 1>&2 echo "#$(date)#$id#" 1>&2