]> arthur.barton.de Git - backup-script.git/blobdiff - bin/backup-script-wrapper
backup-script-wrapper: Return exit code of backup-script
[backup-script.git] / bin / backup-script-wrapper
index 282cab0fd2156479914f2fc4e026b9e138c94565..fbd061f6c919b37e7ae162defdb5202e4d7b91c1 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
@@ -23,20 +23,31 @@ fi
 NAME="backup-script"
 HOST=`hostname`
 TMP=`mktemp /tmp/$NAME.XXXXXXXX` || exit 11
+LOGFILE="/var/log/backup-script.log"
 
 PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
 export PATH
 
-echo "$NAME Report" >"$TMP"
-echo >>"$TMP"
-echo " - Host: `hostname -f`" >>"$TMP"
-echo " - User: `id -un`" >>"$TMP"
-echo >>"$TMP"
-
-"$(dirname "$0")/backup-script" "$@" >>"$TMP" 2>&1
+exec >"$TMP" 2>&1
+
+echo "$NAME Report"
+echo
+echo " - Host: `hostname -f`"
+echo " - User: `id -un`"
+echo
+
+if [ -w "$LOGFILE" ]; then
+       "$(dirname "$0")/backup-script" "$@" | tee -a "$LOGFILE"
+       r=${PIPESTATUS[0]}
+else
+       "$(dirname "$0")/backup-script" "$@"
+       r=$?
+       echo "(Can't write logfile: \"$LOGFILE\"!)"
+fi
 
 cat "$TMP" | mail -s "$HOST: $NAME results" "$MAILTO"
 
 rm -f "$TMP"
+exit $r
 
 # -eof-