From 3346311096bee29b81190ceb377ef5648aee1380 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Sat, 25 Sep 2010 23:37:23 -0300 Subject: New/renamed actions --- lib/hydra/tmpfile | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 lib/hydra/tmpfile (limited to 'lib/hydra/tmpfile') diff --git a/lib/hydra/tmpfile b/lib/hydra/tmpfile new file mode 100644 index 0000000..886d61c --- /dev/null +++ b/lib/hydra/tmpfile @@ -0,0 +1,45 @@ +#!/bin/bash + +# Setup a temporary file +function hydra_set_tmpfile { + if [ -z "$BASEDIR" ]; then + echo "Please set BASEDIR before creating a tmp file" + exit 1 + fi + + if [ -z "$1" ]; then + template="$BASEDIR/tmp/hydra.XXXXXXXXXX" + else + template="$BASEDIR/tmp/$1.XXXXXXXXXX" + fi + + mkdir -p $BASEDIR/tmp + hydra_git_ignore 'tmp/*' + + if [ "$2" == "-d" ]; then + TMPWORK="`mktemp -d $template`" + else + TMPWORK="`mktemp $template`" + fi + + if [ "$?" != "0" ]; then + echo "Error: can't set TMPWORK $TMPWORK" + exit 1 + fi + + trap "hydra_unset_tmpfile $TMPWORK; exit" INT TERM EXIT +} + +# Remove a temporary file +function hydra_unset_tmpfile { + if [ -z "$1" ]; then + echo "No tmp file set" + fi + + rm -f $1 + + if [ "$?" != "0" ]; then + echo "Warning: could not delete file $1. Please delete it manually as it might have sensitive information." + exit 1 + fi +} -- cgit v1.2.3