X-Git-Url: https://git.donarmstrong.com/?p=spamassassin_config.git;a=blobdiff_plain;f=update_spamassassin;h=2610c9ede227861876f383d0c11f5e8796541084;hp=41cf2bc1c958998ce6608e55db974da8f55cd9e4;hb=8a22a55bc937824a7d826d15d1f284a9c7e11175;hpb=6cd5497027448e02ece659cd2d47740b77acc4dd diff --git a/update_spamassassin b/update_spamassassin index 41cf2bc..2610c9e 100755 --- a/update_spamassassin +++ b/update_spamassassin @@ -14,7 +14,7 @@ if [ "$HOSTNAME" == "rietz" ]; then USERCONF="bugs/user_prefs"; elif [ "$HOSTNAME" == "murphy" ]; then BASEDIR="/var/list/.etc"; - USERCONF="bugs/user_prefs"; + USERCONF="lists/user_prefs"; else echo "Unknown hostname '$HOSTNAME'"; exit 1; @@ -28,11 +28,11 @@ ORIGREV=$(svn info $SACONFIG |awk '/^Revision:/{print $2}') NEWREV=$(svn info $(svn info $SACONFIG|awk '/^URL:/{print $2}')|awk '/^Revision:/{print $2}') # no changes, bug out. -if [ $ORIGREV -ge $NEWREV ]; +if [ $ORIGREV -ge $NEWREV ]; then exit 0; fi; -if [ -e "$SACONFIG/.update_spamassassin" ] && kill -0 $(cat "$SACONFIG/.update_spamassassin"); then +if [ -e "$SACONFIG/.update_spamassassin" ] && kill -0 $(cat "$SACONFIG/.update_spamassassin") >/dev/null 2>&1; then echo "Another update_spamassassin appears to be running" exit 1; else @@ -69,30 +69,31 @@ cp -ar $SACONFIG $TMPDIR/. cd $TMPDIR/spamassassin_config; svn update -q --non-interactive; if svn status |grep -q '^C'; then - FAILUREMESSAGE="$(echo -e 'The following conflicts were found\n')" + FAILUREMESSAGE=$'The following conflicts were found\n\n' FAILUREMESSAGE="$FAILUREMESSAGE$(svn status|grep ^C)"; report_failure fi; cd - >/dev/null 2>&1 -FAILUREMESSAGE="$(spamassassin -C $TMPDIR/spamassassin_config/$USERCONF --lint)" -if [ "$?" != "0" ]; then - FAILUREMESSAGE="$(echo -e 'spamassassin -C $TMPDIR/spamassassin_config/$USERCONF --lint\nfailed with\n')$FAILUREMESSAGE"; +if ! spamassassin -p $TMPDIR/spamassassin_config/$USERCONF --lint > $TMPDIR/sa_lint 2>&1; then + FAILUREMESSAGE="$(echo -e 'spamassassin -p $TMPDIR/spamassassin_config/$USERCONF --lint\nfailed with\n'| cat - $TMPDIR/sa_lint)"; report_failure fi; mv "$SACONFIG" "$BAKDIR/spamassassin_config_r$ORIGREV" mv "$TMPDIR/spamassassin_config" "$SACONFIG" trap ERR +remove_pidfile rm -rf "$TMPDIR" if [ "$HOSTNAME" == "rietz" ]; then touch /home/debbugs/.spamassassin/user_prefs elif [ "$HOSTNAME" == "murphy" ]; then # do nothing + true; else echo "Unknown hostname '$HOSTNAME'"; exit 1; fi; -exit 0; \ No newline at end of file +exit 0;