From 8af4b1fe292a0fca7cca3512e904b63ac83473ec Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Sat, 7 Jul 2018 10:45:11 +0200 Subject: [PATCH] pipe cron output to logfile, fix sendreport script --- process/Makefile | 3 +-- process/cron/run-eressea.cron | 4 +++- process/functions.sh | 10 -------- process/sendreport.sh | 45 ++++++++++++++++++++--------------- 4 files changed, 30 insertions(+), 32 deletions(-) delete mode 100644 process/functions.sh diff --git a/process/Makefile b/process/Makefile index 8edfed0b8..0d84bdae2 100644 --- a/process/Makefile +++ b/process/Makefile @@ -1,6 +1,5 @@ SCRIPTS=compress.sh send-bz2-report send-zip-report create-orders \ -run-turn sendreports.sh -IGNORE=sendreport.sh +run-turn sendreports.sh sendreport.sh shellcheck: $(SCRIPTS) shellcheck $(SCRIPTS) diff --git a/process/cron/run-eressea.cron b/process/cron/run-eressea.cron index 4ea38184c..ecd4c6b11 100755 --- a/process/cron/run-eressea.cron +++ b/process/cron/run-eressea.cron @@ -1,6 +1,6 @@ #!/bin/bash GAME=$1 - +( [ "$ENABLED" != "yes" ] && exit [ -z ${ERESSEA} ] && ERESSEA=$HOME/eressea @@ -58,3 +58,5 @@ $BIN/compress.sh $GAME $TURN $BIN/sendreports.sh $GAME $BIN/backup-eressea $GAME $TURN rm -f test/execute.lock +) | tee -a $HOME/log/eressea.cron.log + diff --git a/process/functions.sh b/process/functions.sh deleted file mode 100644 index 859fd302a..000000000 --- a/process/functions.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -PATH=$ERESSEA/bin:$PATH - -function abort() { - if [ $# -gt 0 ]; then - echo $@ - fi - exit -1 -} diff --git a/process/sendreport.sh b/process/sendreport.sh index be643ef56..d98ed505e 100755 --- a/process/sendreport.sh +++ b/process/sendreport.sh @@ -1,11 +1,17 @@ #!/bin/bash -if [ -z $ERESSEA ]; then +if [ -z "$ERESSEA" ]; then echo "You have to define the \$ERESSEA environment variable to run $0" exit -2 fi -source $HOME/bin/functions.sh + +function abort() { + if [ $# -gt 0 ]; then + echo "$@" + fi + exit -1 +} GAME=$1 EMAIL=$2 @@ -14,32 +20,33 @@ PASSWD=$4 #echo "$GAME $EMAIL $FACTION $PASSWD" >> /tmp/report.log function reply() { - echo $@ | mutt -s "Reportnachforderung Partei ${FACTION}" $EMAIL - abort $@ + echo "$@" | mutt -s "Reportnachforderung Partei ${FACTION}" "$EMAIL" + abort "$@" } -LOCKFILE=$ERESSEA/.report.lock -[ -e $LOCKFILE ] && reply "lockfile exists. wait for mail delivery to finish." +LOCKFILE="$ERESSEA/.report.lock" +[ -e "$LOCKFILE" ] && reply "lockfile exists. wait for mail delivery to finish." -REPLYTO='accounts@eressea.de' +echo "$(date):report:$GAME:$EMAIL:$FACTION:$PASSWD" >> "$ERESSEA/request.log" -echo `date`:report:$GAME:$EMAIL:$FACTION:$PASSWD >> $ERESSEA/request.log +cd "$ERESSEA" || exit +checkpasswd.py "game-$GAME/passwd" "$FACTION" "$PASSWD" || reply "Das Passwort fuer die Partei $FACTION ist ungueltig" -cd $ERESSEA -checkpasswd.py game-$GAME/passwd $FACTION $PASSWD || reply "Das Passwort fuer die Partei $FACTION ist ungueltig" - -cd $ERESSEA/game-$GAME/reports -if [ ! -e ${FACTION}.sh ]; then +cd "$ERESSEA/game-$GAME/reports" || exit +if [ ! -e "${FACTION}.sh" ]; then echo "Der Report für Partei $FACTION kann wegen technischer Probleme leider nicht nachgefordert werden: No such file ${FACTION}.sh" \ - | mutt -s "Reportnachforderung Partei ${FACTION}" $EMAIL + | mutt -s "Reportnachforderung Partei ${FACTION}" "$EMAIL" exit fi -source ${FACTION}.sh $EMAIL || reply "Unbekannte Partei $FACTION" +bash "${FACTION}.sh" "$EMAIL" || reply "Unbekannte Partei $FACTION" -if [ -e $ERESSEA/game-$GAME/eressea.db ]; then +if [ -e "$ERESSEA/game-$GAME/eressea.db" ]; then SQL="select email from faction f left join faction_data fd on fd.faction_id=f.id where f.game_id=$GAME AND fd.code='$FACTION' and fd.turn=(select max(turn) from faction_data fx where fx.faction_id=f.id)" - OWNER=$(sqlite3 $ERESSEA/game-$GAME/eressea.db "$SQL") - echo "Der Report Deiner Partei wurde an ${EMAIL} gesandt." \ - | mutt -s "Reportnachforderung Partei ${FACTION}" $OWNER + OWNER=$(sqlite3 "$ERESSEA/game-$GAME/eressea.db" "$SQL") + if [ ! -z "$OWNER" ]; then + echo "Der Report Deiner Partei wurde an ${EMAIL} gesandt." \ + | mutt -s "Reportnachforderung Partei ${FACTION}" "$OWNER" + fi fi +