On 10 Apr 2014, at 20:03, Mike Duigou <mike.dui...@oracle.com> wrote:
> Looks good to me and useful. (Other than that I had hoped to claim "-s" for > a future change I planned ;-) (no worries, I will use "-r" for that)) Thanks for the review Mike. If you want to keep ‘-s’ we can come up with something else, “—np|—non-parallel” ?? Or anything, I’m happy once I can operate in non parallel mode. -Chris. > Mike > > On Apr 10 2014, at 08:54 , Chris Hegarty <chris.hega...@oracle.com> wrote: > >> Sometimes I get a little confused/nervous when trying to push/status/in >> using the hgforest.sh script. The output can be a little confusing as it >> runs several jobs in parallel. >> >> I would like to add an option to support sequential operation of commands. >> It is off by default. The more nervous of us that push using this script can >> opt in, if you like! >> >> diff --git a/common/bin/hgforest.sh b/common/bin/hgforest.sh >> --- a/common/bin/hgforest.sh >> +++ b/common/bin/hgforest.sh >> @@ -29,6 +29,7 @@ >> status_output="/dev/stdout" >> qflag="false" >> vflag="false" >> +sflag="false" >> while [ $# -gt 0 ] >> do >> case $1 in >> @@ -43,6 +44,10 @@ >> global_opts="${global_opts} -v" >> ;; >> >> + -s | --sequential ) >> + sflag="true" >> + ;; >> + >> '--' ) # no more options >> shift; break >> ;; >> @@ -63,7 +68,7 @@ >> command_args="$@" >> >> usage() { >> - echo "usage: $0 [-q|--quiet] [-v|--verbose] [--] <command> >> [commands...]" > ${status_output} >> + echo "usage: $0 [-q|--quiet] [-v|--verbose] [-s|--sequential] [--] >> <command> [commands...]" > ${status_output} >> exit 1 >> } >> >> @@ -243,11 +248,15 @@ >> ) 2>&1 | sed -e "s@^@${reponame}: @" > ${status_output} >> ) & >> >> - if [ `expr ${n} '%' ${at_a_time}` -eq 0 ] ; then >> + if [ `expr ${n} '%' ${at_a_time}` -eq 0 -a "${sflag}" = "false" ] ; then >> sleep 2 >> echo "Waiting 5 secs before spawning next background command." > >> ${status_output} >> sleep 3 >> fi >> + >> + if [ "${sflag}" = "true" ] ; then >> + wait >> + fi >> done >> fi >> >> -Chris. >> >