aboutsummaryrefslogtreecommitdiff
path: root/share/hydractl/backup-restore-gitosis
diff options
context:
space:
mode:
Diffstat (limited to 'share/hydractl/backup-restore-gitosis')
-rwxr-xr-xshare/hydractl/backup-restore-gitosis39
1 files changed, 10 insertions, 29 deletions
diff --git a/share/hydractl/backup-restore-gitosis b/share/hydractl/backup-restore-gitosis
index a10b95f..928f357 100755
--- a/share/hydractl/backup-restore-gitosis
+++ b/share/hydractl/backup-restore-gitosis
@@ -21,40 +21,21 @@ source $APP_BASE/lib/hydra/functions || exit 1
hydra_config_load
# Parameters.
-DATE="`date +%Y%m%d`"
+HOST="$1"
+SERVICE="git"
+SERVICE_DIR="/var/git"
+SERVICE_USER="gitosis"
+SERVICE_GROUP="gitosis"
-# Check restore strategy.
-if [ "$1" == "localhost" ] || [ "$1" == "`facter hostname`" ]; then
- hydra_backup_environment_local
-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
+# Set restore environment.
+hydra_backup_environment_service
# Backup it.
+# TODO: directly at hydra_backup_environment_service
hydractl backup-site git
# Copy site folder from backup.
-cp -a $RESTOREDIR/var/git /var/git
+cp -a $RESTOREDIR/$SERVICE_DIR $SERVICE_DIR
# Fix permissions.
-chown -R $GIT_USER.$GIT_GROUP /var/git
+chown -R $GIT_USER.$GIT_GROUP $SERVICE_DIR