X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=vbuild-nightly.sh;h=3ebcab0f66bce1f22844d76da0a068be5f332f5f;hb=4e211122234db3972056d1f9cc91b70ca47cbb7c;hp=88b77e2d1885a2e49186ab134f759185a2b1ad8b;hpb=0cc4346e90a8b065a2384afb17468e1f77bbff79;p=build.git diff --git a/vbuild-nightly.sh b/vbuild-nightly.sh index 88b77e2d..3ebcab0f 100755 --- a/vbuild-nightly.sh +++ b/vbuild-nightly.sh @@ -5,15 +5,15 @@ COMMANDPATH=$0 COMMAND=$(basename $0) # default values, tunable with command-line options -DEFAULT_FCDISTRO=fc6 +DEFAULT_FCDISTRO=f7 DEFAULT_PLDISTRO=planetlab -DEFAULT_BASE="@DATE@--@PLDISTRO@-@FCDISTRO@" +DEFAULT_PERSONALITY=linux32 +DEFAULT_BASE="@DATE@--@PLDISTRO@-@FCDISTRO@-@PERSONALITY@" DEFAULT_SVNPATH="http://svn.planet-lab.org/svn/build/trunk" -DEFAULT_MAILTO_onelab="onelab-build@one-lab.org" -# tmp - send all mails to onelab -#DEFAULT_MAILTO_planetlab="devel@planet-lab.org" -DEFAULT_MAILTO_planetlab=$DEFAULT_MAILTO_onelab +# NOTE: do not think we want to put email addresses into scripts +# that can be harvested by spambots. --mef +DEFAULT_MAILTO="onelab-build@one-lab.org" # web publishing results DEFAULT_WEBPATH="/build/@PLDISTRO@/" @@ -59,7 +59,7 @@ function success () { summary $LOG >> ${WEBLOG} touch ${WEBLOG}.ok if [ -n "$MAILTO" ] ; then - (echo "http://build.one-lab.org/$PLDISTRO/$BASE" ; echo "Completed on $(date)" ) | mail -s "Successfull build for ${BASE}" $MAILTO + (echo "$PLDISTRO ($BASE) build for $FCDISTRO completed on $(date)" ) | mail -s "Successfull build for ${BASE}" $MAILTO fi exit 0 } @@ -171,17 +171,18 @@ function usage () { echo "This is $REVISION" echo "Supported options" echo " -n dry-run : -n passed to make - vserver gets created though - no mail sent" - echo " -f FCDISTRO - defaults to $DEFAULT_FCDISTRO" - echo " -d PLDISTRO - defaults to $DEFAULT_PLDISTRO" - echo " -b BASE - defaults to $DEFAULT_BASE" + echo " -f fcdistro - defaults to $DEFAULT_FCDISTRO" + echo " -d pldistro - defaults to $DEFAULT_PLDISTRO" + echo " -p personality - defaults to $DEFAULT_PERSONALITY" + echo " -b base - defaults to $DEFAULT_BASE" echo " @NAME@ replaced as appropriate" - echo " -t PLDISTROTAGS - defaults to \${PLDISTRO}-tags.mk" - echo " -r TAGSRELEASE - a release number that refers to PLDISTROTAGS - defaults to HEAD" - echo " -s SVNPATH - where to fetch the build module" + echo " -t pldistrotags - defaults to \${PLDISTRO}-tags.mk" + echo " -r tagsrelease - a release number that refers to PLDISTROTAGS - defaults to HEAD" + echo " -s svnpath - where to fetch the build module" echo " -o : overwrite - re-run in base directory, do not create vserver" - echo " -m MAILTO" - echo " -a MAKEVAR=value - space in values are not supported" - echo " -w WEBPATH - defaults to $DEFAULT_WEBPATH" + echo " -m mailto" + echo " -a makevar=value - space in values are not supported" + echo " -w webpath - defaults to $DEFAULT_WEBPATH" echo " -B : run build only" echo " -T : run test only" echo " -v : be verbose" @@ -201,11 +202,12 @@ function main () { MAKEOPTS=() DO_BUILD=true DO_TEST=true - while getopts "nf:d:b:t:r:s:om:a:w:BTvh" opt ; do + while getopts "nf:d:b:p:t:r:s:om:a:w:BTvh" opt ; do case $opt in n) DRY_RUN="true" ; MAKEOPTS=(${MAKEOPTS[@]} -n) ;; f) FCDISTRO=$OPTARG ;; d) PLDISTRO=$OPTARG ;; + p) PERSONALITY=$OPTARG ;; b) BASE=$OPTARG ;; t) PLDISTROTAGS=$OPTARG ;; r) TAGSRELEASE=$OPTARG ;; @@ -227,20 +229,22 @@ function main () { # set defaults [ -z "$FCDISTRO" ] && FCDISTRO=$DEFAULT_FCDISTRO [ -z "$PLDISTRO" ] && PLDISTRO=$DEFAULT_PLDISTRO + [ -z "$PERSONALITY" ] && PERSONALITY=$DEFAULT_PERSONALITY [ -z "$PLDISTROTAGS" ] && PLDISTROTAGS="${PLDISTRO}-tags.mk" [ -z "$BASE" ] && BASE="$DEFAULT_BASE" [ -z "$WEBPATH" ] && WEBPATH="$DEFAULT_WEBPATH" [ -z "$SVNPATH" ] && SVNPATH="$DEFAULT_SVNPATH" - # + + # NOTE: suggest that by default no email is sent and that the user + # should explicitly invoke this script with the -m arg to pass in + # the appropriate email address. --mef if [ "$PLDISTRO" = "onelab" ] ; then - [ -z "$MAILTO" ] && MAILTO="$DEFAULT_MAILTO_onelab" - else - [ -z "$MAILTO" ] && MAILTO="$DEFAULT_MAILTO_planetlab" + [ -z "$MAILTO" ] && MAILTO="$DEFAULT_MAILTO" fi [ -n "$DRY_RUN" ] && MAILTO="" ### set BASE from DISTRO, if unspecified - sedargs="-e s,@DATE@,${DATE},g -e s,@FCDISTRO@,${FCDISTRO},g -e s,@PLDISTRO@,${PLDISTRO},g" + sedargs="-e s,@DATE@,${DATE},g -e s,@FCDISTRO@,${FCDISTRO},g -e s,@PLDISTRO@,${PLDISTRO},g -e s,@PERSONALITY@,${PERSONALITY},g" BASE=$(echo ${BASE} | sed $sedargs) WEBPATH=$(echo ${WEBPATH} | sed $sedargs) @@ -299,7 +303,7 @@ function main () { svn export $SVNPATH $tmpdir # Create vserver cd $tmpdir - ./vbuild-init-vserver.sh ${BASE} ${FCDISTRO} ${PLDISTRO} + ./vbuild-init-vserver.sh -f ${FCDISTRO} -d ${PLDISTRO} -p ${PERSONALITY} ${BASE} # cleanup cd - rm -rf $tmpdir