]> gitweb.fluxo.info Git - hydra.git/commitdiff
Coding backup-copy-site
authorSilvio Rhatto <rhatto@riseup.net>
Wed, 4 Jan 2012 21:48:48 +0000 (19:48 -0200)
committerSilvio Rhatto <rhatto@riseup.net>
Wed, 4 Jan 2012 21:48:48 +0000 (19:48 -0200)
share/hydractl/backup-copy-site
share/hydractl/backup-site

index d64ac7e145d62af46c0475442e09da4b155d5f30..8eccecdab38504e5ad088a8d03951404d8b1df77 100755 (executable)
@@ -7,9 +7,33 @@
 source $APP_BASE/lib/hydra/functions || exit 1
 hydra_config_load
 
-# TODO
 # Basic parameters.
+SITES="/var/sites"
+DEST="$1"
+SITE="$2"
+DATE="`date +%Y%m%d`"
+ORIG="$SITES/backups/site/$SITE/`facter hostname`"
+
 # Syntax check.
+if [ -z "$SITE" ]; then
+  hydra_action_usage
+  exit 1
+fi
+
+# Ensure we have a recent local backup.
+if [ ! -d "$ORIG/$DATE" ]; then
+  echo "Backup for $SITE at $DATE not found, creating one..."
+  hydractl site-backup $SITE
+fi
+
 # Parse server name and port.
-# Check restore strategy.
+SERVER="`echo $DEST | cut -d : -f 1`"
+PORT="`echo $DEST | cut -d : -f 2`"
+
+# Ensure we have a port.
+if [ -z "$PORT" ]; then
+  PORT="22"
+fi
+
 # Sync to remote destination.
+rsync -av -e "ssh -p $PORT" $ORIG/ backups@$SERVER:/$ORIG/
index d989ee32664036b97c4854fb410049e968899678..914e3e4671729023d7b376182f20e95ea09c8231 100755 (executable)
@@ -7,14 +7,14 @@
 source $APP_BASE/lib/hydra/functions || exit 1
 hydra_config_load
 
-# Arguments
+# Basic parameters.
 SITES="/var/sites"
 SITE="$1"
 PACK="$1.tar.bz2"
 DATE="`date +%Y%m%d`"
 DEST="$SITES/backups/site/$SITE/`facter hostname`/$DATE"
 
-# Syntax check
+# Syntax check.
 if [ -z "$SITE" ]; then
   hydra_action_usage
   exit 1