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.
>> 
> 

Reply via email to