#!/bin/bash # Setup backup environment function hydra_backup_environment { NODE="$1" METHOD="$2" BACKUP_ROOT="/var/backups/remote" DOMAIN="`facter domain`" BACKUPDIR="$BACKUP_ROOT/$NODE.$domain" if [ ! -z "$DATE" ]; then RESTOREDIR="$BACKUPDIR/restore/$DATE" else RESTOREDIR="$BACKUPDIR/restore/`date +%Y%m%d`" fi if [ -z "$NODE" ]; then hydra_action_usage exit 1 fi if [ ! -d "$BACKUPDIR" ]; then echo "No backup found at $BACKUPDIR" exit 1 fi if [ -z "$METHOD" ]; then if [ -d "$BACKUPDIR/rsync" ]; then echo "Assuming rsync backup method" BACKUPDIR="$BACKUPDIR/rsync" elif [ -d "$BACKUPDIR/rdiff" ]; then echo "Assuming rdiff backup method" BACKUPDIR="$BACKUPDIR/rdiff" else echo "Missing backup action" exit 1 fi else if [ -d "$BACKUPDIR/$METHOD" ]; then BACKUPDIR="$BACKUPDIR/$METHOD" else echo "Backup folder for $METHOD not found at $BACKUPDIR" exit 1 fi fi if [ -d "$RESTOREDIR" ]; then echo "Restoration folder $RESTOREDIR already exists" exit 1 fi mkdir -p $RESTOREDIR }