aboutsummaryrefslogtreecommitdiff
path: root/share/hydractl/backup-restore-gitosis
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2012-06-28 12:54:31 -0300
committerSilvio Rhatto <rhatto@riseup.net>2012-06-28 12:54:31 -0300
commita58fa1d4a75b8a3263e8d039106c47d9c8452a70 (patch)
treecba39c1e71b28e181a72d723f07b30f731e0a066 /share/hydractl/backup-restore-gitosis
parenta7bb43458ea3a6b7cc367a35013af8c313f4fef4 (diff)
downloadhydra-a58fa1d4a75b8a3263e8d039106c47d9c8452a70.tar.gz
hydra-a58fa1d4a75b8a3263e8d039106c47d9c8452a70.tar.bz2
Unifying service restoration with hydra_backup_environment_service
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