#!/bin/bash

. /etc/profile

set -x 
#PATH=/home/jm/sabuildtools/bin:$PATH

#ADDING MORE EXIT STATUS CHECKS FOR BUG 6702
echo "'Running do-nightly-rescore-example.sh ..."
echo ""
/usr/local/spamassassin/automc/svn/trunk/masses/rule-update-score-gen/do-nightly-rescore-example.sh $1

RV=$?
if [ $RV -ne 0 ] ; then 
  echo "Exit Status $RV is not zero for do-nightly-rescore-example" 
  (
    echo "From: noreply@spamassassin.apache.org (automc Cron)"
    echo "Subject: [auto] do-nightly-rescore-example return code $RV"
    echo ""
    echo "Exit Status $RV is not zero for do-nightly-rescore-example.sh"
    echo ""
    echo "=== tail of ~automc/tmp/do-stable-update-with-scores.log ==="
    tail -20 /usr/local/spamassassin/automc/tmp/do-stable-update-with-scores.log
  ) | /usr/sbin/sendmail -oi ruleqa@spamassassin.apache.org
else
  echo "Running mkupdate-with-scores..."
  echo ""
  /usr/local/spamassassin/automc/svn/trunk/build/mkupdates/mkupdate-with-scores
  RV=$?
  if [ $RV -ne 0 ] ; then 
    echo "Exit Status $RV is not zero for mkupdate-with-scores" 
    (
      echo "From: noreply@spamassassin.apache.org (automc Cron)"
      echo "Subject: [auto] mkupdate-with-scores return code $RV"
      echo ""
      echo "Exit Status $RV is not zero for mkupdate-with-scores"
      echo ""
      echo "=== tail of ~automc/tmp/do-stable-update-with-scores.log ==="
      tail -20 /usr/local/spamassassin/automc/tmp/do-stable-update-with-scores.log
    ) | /usr/sbin/sendmail -oi ruleqa@spamassassin.apache.org
  fi
fi

