]> git.donarmstrong.com Git - spamassassin_config.git/blobdiff - update_spamassassin
Block https://lists.debian.org/debian-www/2015/05/msg00070.html and others
[spamassassin_config.git] / update_spamassassin
index ef9fef7fd300a2c44137406c359e0648c6a82e8f..46b4952357d5838ebb75e37213b89911971909d2 100755 (executable)
@@ -9,10 +9,12 @@ SVN=$(which svn)
 
 TMPDIR=$(mktemp -d);
 
-if [ "$HOSTNAME" = "rietz" ]; then
+HOSTNAME=$(hostname);
+
+if [ "$HOSTNAME" = "buxtehude" ]; then
     BASEDIR="/org/bugs.debian.org"
     USERCONF="bugs/user_prefs";
-elif [ "$HOSTNAME" = "liszt" ]; then
+elif [ "$HOSTNAME" = "bendel" ]; then
     BASEDIR="/var/list/.etc";
     USERCONF="lists/user_prefs";
 else
@@ -23,6 +25,13 @@ fi;
 SACONFIG="$BASEDIR/spamassassin_config";
 BAKDIR="$BASEDIR/spamassassin_config_bak";
 
+# because alioth continuously fails, make sure that svn info will
+# succeed first before cluttering the log. Ideally we would report
+# this error, but it happens far too frequently, so we bail out here.
+if ! svn info $(svn info $SACONFIG|awk '/^URL:/{print $2}') >/dev/null 2>&1; then
+    exit 0;
+fi;
+
 # figure out if there's an update to be made
 ORIGREV=$(svn info $SACONFIG |awk '/^Revision:/{print $2}')
 NEWREV=$(svn info $(svn info $SACONFIG|awk '/^URL:/{print $2}')|awk '/^Revision:/{print $2}')
@@ -39,14 +48,14 @@ else
     echo $$ > "$SACONFIG/.update_spamassassin";
 fi;
 
-function remove_pidfile(){
+remove_pidfile () {
     rm "$SACONFIG/.update_spamassassin";
 }
 
-trap remove_pidfile ERR;
+trap remove_pidfile 0;
 
 FAILUREMESSAGE="";
-function report_failure(){
+report_failure () {
     # Hrm; a previous update failed; don't report again until the file
     # is removed or it's more than a day old
     if [ -e "$SACONFIG/failed_update" ] &&
@@ -85,13 +94,13 @@ if ! spamassassin -p $TMPDIR/spamassassin_config/$USERCONF --lint > $TMPDIR/sa_l
 fi;
 mv "$SACONFIG" "$BAKDIR/spamassassin_config_r$ORIGREV"
 mv "$TMPDIR/spamassassin_config" "$SACONFIG"
-trap - ERR
+trap - 0
 remove_pidfile
 rm -rf "$TMPDIR"
 
-if [ "$HOSTNAME" == "rietz" ]; then
+if [ "$HOSTNAME" = "buxtehude" ]; then
     touch /home/debbugs/.spamassassin/user_prefs
-elif [ "$HOSTNAME" == "liszt" ]; then
+elif [ "$HOSTNAME" = "bendel" ]; then
     # do nothing
     true;
 else