]> arthur.barton.de Git - backup-script.git/blobdiff - bin/backup-script-wrapper
backup-status: Refactor argument parsing
[backup-script.git] / bin / backup-script-wrapper
index 8ae3fc800e695461ac587366c3a3acea327cd5b8..8d160e494ee09705725589401f06b7a042bb19e5 100755 (executable)
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 #
 # backup-script system for cloning systems using rsync
 # Copyright (c)2008-2015 Alexander Barton, alex@barton.de
@@ -21,8 +21,11 @@ if [ -z "$MAILTO" ]; then
 fi
 
 NAME="backup-script"
-HOST=`hostname`
-TMP=`mktemp /tmp/$NAME.XXXXXXXX` || exit 11
+HOST=`hostname -f`
+TMP=`mktemp /tmp/$NAME.XXXXXXXX` || exit 1
+LOGFILE="/var/log/backup-script.log"
+DELIMITER="- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"
+SUBJECT="$NAME results"
 
 PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
 export PATH
@@ -35,10 +38,26 @@ echo " - Host: `hostname -f`"
 echo " - User: `id -un`"
 echo
 
-"$(dirname "$0")/backup-script" "$@"
+if echo "$DELIMITER" >>"$LOGFILE" 2>/dev/null; then
+       echo >>"$LOGFILE"
+       "$(dirname "$0")/backup-script" "$@" | tee -a "$LOGFILE"
+       r=${PIPESTATUS[0]}
+else
+       "$(dirname "$0")/backup-script" "$@"
+       r=$?
+       echo "(Can't write logfile: \"$LOGFILE\"!)"
+fi
+
+case "$r" in
+       0)
+               ;;
+       *)
+               SUBJECT="$SUBJECT - with ERRORS!"
+esac
 
-cat "$TMP" | mail -s "$HOST: $NAME results" "$MAILTO"
+cat "$TMP" | mail -s "$HOST: $SUBJECT" "$MAILTO"
 
 rm -f "$TMP"
+exit $r
 
 # -eof-