summaryrefslogtreecommitdiff
path: root/include/logger.sh
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2016-07-20 15:42:41 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2016-07-20 15:42:41 -0400
commitde413e7ae293f2b919e2e75369c1ecb8a0c83975 (patch)
tree143ea097ea9e740c48b62335d468e9b0543be7b3 /include/logger.sh
downloadastroconda-control-de413e7ae293f2b919e2e75369c1ecb8a0c83975.tar.gz
Initial commit
Diffstat (limited to 'include/logger.sh')
-rw-r--r--include/logger.sh22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/logger.sh b/include/logger.sh
new file mode 100644
index 0000000..b8806e1
--- /dev/null
+++ b/include/logger.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+function logger
+{
+ local logfile="$1"
+ if [[ $logfile != *.log ]]; then
+ echo "logger: log file is missing .log prefix, '$logfile'"
+ exit 1
+ fi
+
+ shift
+
+ # Bash magic: return this exit value for the first pipe command
+ echo "Writing log: $logfile"
+ set -o pipefail
+ "$@" 2>&1 | tee $logfile
+ retval=$?
+ set +o pipefail
+
+ return $retval
+}
+