Changed yet another dependency on debathena-kerberos-config -> invirt-kerberos-config
[invirt/packages/xvm-db-backup.git] / xvm-db-backup
index 80d6ae9..5c93095 100755 (executable)
@@ -5,12 +5,21 @@ set -e
 kinit -k "daemon/$(hostname -f)"
 aklog sipb
 
-db_filename="/mit/xvm/backups/db/prod/$(date +%Y-%m-%d-%H-%M.sql.gz)"
+db_filename="/mit/xvm/backups/db/prod/$(date +%Y/%m/%d.%H%M.sql.gz)"
+mkdir -p "$(dirname $db_filename)"
 
+exclude=()
+if invirt-getconf db.backup_exclude &>/dev/null; then
+    for i in invirt-getconf -l db.backup_exclude; do
+       exclude=("${exclude[@]}" -T "$(invirt-getconf "db.backup_exclude.$i")")
+    done
+fi
 /usr/bin/pg_dump -U "$(invirt-getconf db.user)" \
                  -h "$(invirt-getconf db.host)" \
+                 "${exclude[@]}" \
                  "$(invirt-getconf db.dbname)" | gzip - >"$db_filename"
 
-running_filename="/mit/xvm/log/running/prod/$(date +%Y-%m-%d-%H-%M.gz)"
+running_filename="/mit/xvm/log/running/prod/$(date +%Y/%m/%d.%H%M.gz)"
+mkdir -p "$(dirname $running_filename)"
 
 remctl "$(invirt-getconf remote.hostname)" web listvms | gzip - >"$running_filename"