#!/bin/bash # # Gitosis backup restoration. # # Load. source $APP_BASE/lib/hydra/functions || exit 1 hydra_config_load # Parameters. DATE="`date +%Y%m%d`" # Check restore strategy. if [ "$1" == "localhost" ] || [ "$1" == "`facter hostname`" ]; then hydra_backup_environment_local $2 restore else hydra_backup_environment_remote $1 restore fi # Check if folder exist on the backup. if [ ! -d "$RESTOREDIR/var/git" ]; then echo "Git folder does not exist: $RESTOREDIR/var/git" exit 1 fi # Set git user. if hydra_check_user gitosis; then $GIT_USER="gitosis" else $GIT_USER="root" fi # Set git group. if hydra_check_group gitosis; then $GIT_GROUP="gitosis" else $GIT_GROUP="root" fi # TODO: more like backup-site # Backup it. mkdir -p /var/site/backups/git/ mv /var/git /var/site/backups/git/$DATE # Copy site folder from backup. cp -a $RESTOREDIR/var/git /var/git # Fix permissions. chown -R $GIT_USER.$GIT_GROUP /var/git