# Runs the smokebot program on the trunk and mails the results 0 * * * * smokebot HEAD smokereports@us.com # Smoke against the branches 30 * * * * smokebot cp2004-branch smokereports@us.com #### #!/bin/sh if [ $# -lt 2 ] then echo Must pass at least a branch, and one email address, echo plus any parms to echo pass to smoke. exit 1 fi REV=$1 shift MAIL=$1 shift cd $TMP DIR=tw FULLPATH=$TMP/$DIR # This assumes you have already logged in once as anoncvs # so that the password is in your ~/.cvspass file. cvs -d/home/cvs -Q co -d $DIR -r $REV tw > /dev/null TWROOT=$FULLPATH export TWROOT /home/smoke/tw/Dev/devapache stop > /dev/null 2>&1 /home/smoke/tw/Dev/devapache start > /home/smoke/smoke.out 2>&1 cd $TWROOT smoke $@ >> /home/smoke/smoke.out 2>&1 grep -i "^Failed" /home/smoke/smoke.out > /home/smoke/smoke.out.fail if [ -s /home/smoke/smoke.out.fail ] then STATUS="FAILED" mail -s"Smoke $REV $@ $STATUS `date`" $MAIL < /home/smoke/smoke.out else STATUS="passed" fi /home/smoke/tw/Dev/devapache stop >> /home/smoke/smoke.out 2>&1