#!/bin/sh HG='hg' WEBSITE="http://hg.tryton.org/" DIRECTORY=$(pwd) BRANCH= ONLYMODULES= while getopts 'd:b:mh' OPTION ; do case $OPTION in d) DIRECTORY=${OPTARG};; b) BRANCH=${OPTARG}/;; m) ONLYMODULES=yes;; ?) echo >&2 "Usage: $(basename $0) [-d directory] [-b branch] [-m]" exit 2;; esac done [ -d "$DIRECTORY" ] || mkdir -p "$DIRECTORY" if [ -z $ONLYMODULES ] ; then echo "Cloning tryton into $DIRECTORY" $HG clone $WEBSITE${BRANCH}tryton "$DIRECTORY"/tryton if [ $? -ne 0 ]; then echo >&2 "Cloning tryton failed!" exit 2 fi echo "Cloning trytond into $DIRECTORY" $HG clone $WEBSITE${BRANCH}trytond "$DIRECTORY"/trytond if [ $? -ne 0 ]; then echo >&2 "Cloning trytond failed!" exit 2 fi elif [ ! -d "$DIRECTORY"/trytond/trytond/modules ] ; then mkdir -p "$DIRECTORY"/trytond/trytond/modules fi wget -q ${WEBSITE}${BRANCH}/modules -O - \ | sed 's!!\n!g' | sed 's/.*>//' \ | grep -v -E '(Atom|RSS|Name|Description|Contact|Last change|^$)' \ | while read module ; do echo "Clone module $module into $DIRECTORY/trytond/trytond/modules/" $HG clone $WEBSITE${BRANCH}modules/"$module" "$DIRECTORY"/trytond/trytond/modules/"$module" if [ $? -ne 0 ]; then echo >&2 "Cloning module $module trytond failed!" exit 2 fi done