]> gitweb.fluxo.info Git - puppet-backup.git/commitdiff
Adding script sync-backups
authorSilvio Rhatto <rhatto@riseup.net>
Sat, 18 Sep 2010 22:43:27 +0000 (19:43 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Sat, 18 Sep 2010 22:43:27 +0000 (19:43 -0300)
files/sync-backups [new file with mode: 0644]
manifests/init.pp

diff --git a/files/sync-backups b/files/sync-backups
new file mode 100644 (file)
index 0000000..b75fe90
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/bash
+#
+# sync a removable volume with system backups.
+#
+
+NODE="$1"
+MEDIA="/media/usb"
+BWLIMIT="5000"
+RSYNC="nice -n 19 rsync -av --delete --bwlimit=$BWLIMIT"
+
+if [ ! -z "$NODE" ]; then
+  for node in `ls /var/vservers/$NODE/var/backups/remote/`; do
+    $RSYNC /var/vservers/$NODE/var/backups/remote/$node/ /$MEDIA/$node/
+  done
+else
+  $RSYNC /var/backups/duplicity/ /$MEDIA/$HOSTNAME/
+
+  for node in `ls /var/backups/remote/`; do
+    $RSYNC /var/backups/remote/$node/ /$MEDIA/$node/
+  done
+fi
index 7ce4043c0db987e5b54a11b5588dd3eb3b9f21b1..236751a7df8f5c086600d6f86f8a3ac57c540af7 100644 (file)
@@ -129,6 +129,15 @@ class backup {
     source  => "puppet://$server/modules/backup/handlers/rsync",
   }
 
+  # sync-backups script
+  file { "/usr/local/sbin/sync-backups":
+    owner   => root,
+    group   => root,
+    mode    => 0755,
+    ensure  => present,
+    source  => "puppet://$server/modules/backup/sync-backups",
+  }
+
   # default backupninja::rdiff configuration
   define rdiff($port = '22', $ensure = present, $installkey = true) {
     backupninja::rdiff { "rdiff-$title.$domain":