#!/bin/bash # # driver for cron. # 30 8 * * * automc bash /usr/local/spamassassin/svn/trunk/build/mkupdates/run_nightly > /var/www/bbmass.spamassassin.org/mkupdates/mkupdates.txt 2>&1 set -x LOGDIR="/var/www/bbmass.spamassassin.org/mkupdates" cd /usr/local/spamassassin/svn/trunk/ . /etc/profile #Switched to system perl on spamassassin-vm box PERL=/usr/bin/perl #PERL=/local/perl586/bin/perl export PERL # Will this script be updated? If so, re-run it after updating. FLAG=NO if [ "`svn status -uq build/mkupdates/run_nightly | head -1 | cut -b8`" = "*" ]; then FLAG=YES fi svn cleanup # paranoia svn update || exit $? # Do the restart if we need to ... if [ "$FLAG" = "YES" ]; then #THIS IS NOT WORKING CURRENTLY 6-15-2014 exec $0 "$@" # It shouldn't get here, but just in case ... exit 2 fi $PERL ./build/mkupdates/listpromotable > rules/active.list.new || exit $? mv rules/active.list.new rules/active.list ( echo " To commit this and proceed with update tarball creation: ssh sa-vm1.apache.org sudo -u automc /usr/local/spamassassin/svn/trunk/build/mkupdates/run_part2 " svn diff ) > $HOME/LATEST cat $HOME/LATEST # mailx -s "[admin] planned commit for active.list" \ # dev@Spamassassin.apache.org < /home/updatesd/LATEST # cycle the logfiles; keep 6 (3 days worth I think) X=6 [[ -e "$LOGDIR/mkupdates_${X}.txt" ]] && rm -f $LOGDIR/mkupdates_${X}.txt while [[ $X -gt 0 ]]; do ((X--)) Y=$((X+1)) [[ -e "$LOGDIR/mkupdates_${X}.txt" ]] && mv -f $LOGDIR/mkupdates_${X}.txt $LOGDIR/mkupdates_${Y}.txt done mv -f $LOGDIR/mkupdates.txt $LOGDIR/mkupdates_${Y}.txt # create a list of "bad" rules in the current sandboxes, updated daily $PERL masses/rule-qa/list-bad-rules \ > /var/www/ruleqa.spamassassin.org/reports/badrules.txt 2>&1 #On Wednesday's, we send out a bad sandbox rules report to the list if [ `date +%w` = 3 ] ; then ( echo "From: noreply@sa-vm1.apache.org (Rules Report Cron)" echo "Subject: [auto] bad sandbox rules report" echo cat /var/www/ruleqa.spamassassin.org/reports/badrules.txt ) | /usr/sbin/sendmail -oi dev@spamassassin.apache.org fi