X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=backupninja;h=b91d2c885dd0e5bec2348f4605425365c822201d;hb=b22ff8619a1f97f64e8726b61e6586cb886195b4;hp=a1bfabc61e3d89336968e08a40a02afc059e02de;hpb=688e9521a4307ca8510e0a9e9cfada98cdabcd58;p=matthijs%2Fupstream%2Fbackupninja-vserver.git diff --git a/backupninja b/backupninja index a1bfabc..b91d2c8 100755 --- a/backupninja +++ b/backupninja @@ -271,7 +271,7 @@ EOF function process_action() { local file="$1" local suffix="$2" - + local run="no" setfile $file # skip over this config if "when" option @@ -279,8 +279,10 @@ function process_action() { getconf when "$defaultwhen" if [ "$processnow" == 1 ]; then info ">>>> starting action $file (because of --now)" + run="yes" elif [ "$when" == "hourly" ]; then info ">>>> starting action $file (because 'when = hourly')" + run="yes" else IFS=$'\t\n' for w in $when; do @@ -290,18 +292,27 @@ function process_action() { IFS=$'\t\n' if [ $ret == 0 ]; then debug "skipping $file because it is not $w" - return else info ">>>> starting action $file (because it is $w)" + run="yes" fi done IFS=$' \t\n' fi + debug $run + [ "$run" == "no" ] && return let "actions_run += 1" # call the handler: - local bufferfile="/tmp/backupninja.buffer.$$" + if [ -x /bin/mktemp ] + then + local bufferfile=`mktemp /tmp/backupninja.buffer.XXXXXXXX` + else + DATE=`date` + sectmp=`echo $DATE | /usr/bin/md5sum | cut -d- -f1` + local bufferfile=/tmp/backupninja.buffer.$sectmp + fi echo "" > $bufferfile echo_debug_msg=1 ( @@ -434,6 +445,8 @@ getconf RDIFFBACKUP /usr/bin/rdiff-backup getconf MYSQL /usr/bin/mysql getconf MYSQLHOTCOPY /usr/bin/mysqlhotcopy getconf MYSQLDUMP /usr/bin/mysqldump +getconf PGSQLDUMP /usr/bin/pg_dump +getconf PGSQLDUMPALL /usr/bin/pg_dumpall getconf GZIP /bin/gzip getconf RSYNC /usr/bin/rsync getconf vservers no @@ -473,7 +486,7 @@ errormsg="" if [ "$singlerun" ]; then files=$singlerun else - files=`find $configdirectory -mindepth 1 | sort -n` + files=`find $configdirectory ! -name '.*.swp' -mindepth 1 | sort -n` fi for file in $files; do