X-Git-Url: https://git.donarmstrong.com/?p=spamassassin_config.git;a=blobdiff_plain;f=update_spamassassin;h=1769913350bb46cdcedd7dd138cf55db5874e714;hp=59ab92e4d858f1a2f623b05993dbac6454259a7a;hb=0a89823a2dd28fb3ba9bb3f7b3bf3812495460ff;hpb=11ce2b1ce79fb3fde1e9b1a5b2388e4fcd3cac4b diff --git a/update_spamassassin b/update_spamassassin index 59ab92e..1769913 100755 --- a/update_spamassassin +++ b/update_spamassassin @@ -9,12 +9,12 @@ SVN=$(which svn) TMPDIR=$(mktemp -d); -if [ "$HOSTNAME" == "rietz" ]; then +if [ "$HOSTNAME" = "rietz" ]; then BASEDIR="/org/bugs.debian.org" USERCONF="bugs/user_prefs"; -elif [ "$HOSTNAME" == "murphy" ]; then +elif [ "$HOSTNAME" = "liszt" ]; 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 ]; then +if [ "0$ORIGREV" -ge "0$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 @@ -50,6 +50,7 @@ function report_failure(){ # Hrm; a previous update failed; don't report again until the file # is removed if [ -e "$SACONFIG/failed_update" ]; then + rm -rf "$TMPDIR" exit 0; fi; echo "$FAILUREMESSAGE" >> "$SACONFIG/failed_update" @@ -62,6 +63,7 @@ is fixed. Please fix the problem and then remove $SACONFIG/failed_update EOF + rm -rf "$TMPDIR" exit 1; } @@ -75,20 +77,21 @@ if svn status |grep -q '^C'; then fi; cd - >/dev/null 2>&1 -if ! spamassassin -C $TMPDIR/spamassassin_config/$USERCONF --lint > $TMPDIR/sa_lint 2>&1; then - FAILUREMESSAGE="$(echo -e 'spamassassin -C $TMPDIR/spamassassin_config/$USERCONF --lint\nfailed with\n'| cat - $TMPDIR/sa_lint)"; +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 +trap - ERR remove_pidfile rm -rf "$TMPDIR" if [ "$HOSTNAME" == "rietz" ]; then touch /home/debbugs/.spamassassin/user_prefs -elif [ "$HOSTNAME" == "murphy" ]; then +elif [ "$HOSTNAME" == "liszt" ]; then # do nothing + true; else echo "Unknown hostname '$HOSTNAME'"; exit 1;