]> gitweb.fluxo.info Git - hydra.git/commitdiff
Cleanup at backup-restore-hidden
authorSilvio Rhatto <rhatto@riseup.net>
Thu, 28 Jun 2012 16:00:35 +0000 (13:00 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Thu, 28 Jun 2012 16:00:35 +0000 (13:00 -0300)
share/hydractl/backup-restore-hidden

index 4e2ba2a41b5b409a9357c254b81fe671b471f36c..d439b294b0a96cc4c477608f79ef275f6e5ca199 100755 (executable)
@@ -22,59 +22,36 @@ hydra_config_load
 
 # Parameters.
 DATE="`date +%Y%m%d`"
-HIDDEN_DIR="/var/lib/tor/hidden"
+HOST="$1"
+SERVICE="hidden"
+SERVICE_DIR="/var/lib/tor/hidden"
+SERVICE_USER="debian-tor"
+SERVICE_GROUP="debian-tor"
 
-# 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/$HIDDEN_DIR" ]; then
-  echo "Hidden services folder does not exist: $RESTOREDIR/$HIDDEN_DIR"
-  exit 1
-fi
-
-# Set git user.
-if hydra_check_user debian-tor; then
-  HIDDEN_USER="debian-tor"
-else
-  HIDDEN_USER="root"
-fi
-
-# Set git group.
-if hydra_check_group debian-tor; then
-  HIDDEN_GROUP="debian-tor"
-else
-  HIDDEN_GROUP="root"
-fi
-
-# TODO: Backup it?
-#hydractl backup-hidden
+# Set restore environment.
+hydra_backup_environment_service
 
 # Restore hidden service folder from backup.
 #
 # Symlink creation on site instances like drupal should be done
 # already by backup-restore-site.
-for folder in `ls $RESTOREDIR/$HIDDEN_DIR`; do
-  if [ -e "$HIDDEN_DIR/$folder/hostname" ]; then
+for folder in `ls $RESTOREDIR/$SERVICE_DIR`; do
+  if [ -e "$SERVICE_DIR/$folder/hostname" ]; then
     # A hidden service already exists
-    if ! diff "$HIDDEN_DIR/$folder/hostname" "$RESTOREDIR/$HIDDEN_DIR/$folder/hostname" &> /dev/null; then
+    if ! diff "$SERVICE_DIR/$folder/hostname" "$RESTOREDIR/$SERVICE_DIR/$folder/hostname" &> /dev/null; then
       # They're different hidden services!
-      echo "Hidden service $hidden already exists on $HIDDEN_DIR/$folder and differs from backup!"
+      echo "Hidden service $hidden already exists on $SERVICE_DIR/$folder and differs from backup!"
       echo "Please fix this conflict manually and restore backups again."
     else
       echo "Hidden service $hidden already in place, no need to copy."
     fi
   else
-    echo "Processing $HIDDEN_DIR/$folder..."
-    rm -rf $HIDDEN_DIR/$folder
-    cp -a $RESTOREDIR/$HIDDEN_DIR/$folder $HIDDEN_DIR/$folder
+    echo "Processing $SERVICE_DIR/$folder..."
+    rm -rf $SERVICE_DIR/$folder
+    cp -a $RESTOREDIR/$SERVICE_DIR/$folder $SERVICE_DIR/$folder
   fi
 done
 
 # Fix permissions.
-chown -R $HIDDEN_USER.$HIDDEN_GROUP $HIDDEN_DIR
+chown -R $SERVICE_USER.$SERVICE_GROUP $SERVICE_DIR