aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMicah Anderson <micah@riseup.net>2009-08-27 15:43:52 -0400
committerMicah Anderson <micah@riseup.net>2009-08-27 15:43:52 -0400
commita7c710bda474a08a8902978069bcc3227ba5f223 (patch)
treee17b63ca650b69aa0d3f174330f44203df6446cc
parentdae31bd0aa6cb47122b080acaee584e7df354da3 (diff)
downloadpuppet-backupninja-a7c710bda474a08a8902978069bcc3227ba5f223.tar.gz
puppet-backupninja-a7c710bda474a08a8902978069bcc3227ba5f223.tar.bz2
* add duplicity package management class to the client class
* update the README to be more clear about how this works, provide more examples and included details about the addition of the backupninja::client::duplicity class
-rw-r--r--README34
-rw-r--r--manifests/client.pp11
2 files changed, 35 insertions, 10 deletions
diff --git a/README b/README
index 4fc5c34..3b73200 100644
--- a/README
+++ b/README
@@ -36,19 +36,33 @@ A remote rdiff backup handler:
user => "backup-$hostname",
}
-If you include the backupninja::client::rdiff_backup class, you will
-get the rdiff-backup package installed automatically, this also works
-for the backupninja::client::maildir class (installs needed rsync package)
+To manage the installed backup software, using puppet package
+management, you can include the backupninja::client::$backupprogram
+class (where $backupprogram is one of: rdiff_backup, maildir,
+duplicity). This will get the $backupprogram package installed
+automatically, you do not need to include this class, if you wish to
+manage the package version some other way, for example:
-If you need to specify a specific version of the rdiff-backup, or rsync package, you can do so
-by specifying the variables:
+include backupninja::client::rdiff_backup
+include backupninja::client::maildir
+include backupninja::client::duplicity
+
+When this class is included, it will make sure that the correct
+version that is associated with puppet's 'installed' (or 'present')
+parameter is installed. If you need to specify a specific version of
+the rdiff-backup, rsync or duplicity packages, you can do so by
+specifying the variables:
$rdiff_backup_ensure_version = "1.2.5-1~bpo40+1"
$rsync_ensure_version = "3.0.6-1~bpo50+1"
+$duplicity_ensure_version = "0.6.04-1~bpo50+1"
+
+If you do not specify these variables the default 'installed/present'
+version will be installed when you include this class.
-If you configure a backupninja::server, it will collect those users and create
-them. We have yet to create proper authorized_keys management to make that
-process completely automatic.
+If you configure a backupninja::server, it will collect those users
+and create them. We have yet to create proper authorized_keys
+management to make that process completely automatic.
-At the moment, not all the backupninja handlers are available, they are relatively
-easy to add however. \ No newline at end of file
+At the moment, not all the backupninja handlers are available, they
+are relatively easy to add however. \ No newline at end of file
diff --git a/manifests/client.pp b/manifests/client.pp
index a3d2242..ef449f5 100644
--- a/manifests/client.pp
+++ b/manifests/client.pp
@@ -105,3 +105,14 @@ class backupninja::client::rdiff_backup inherits backupninja::client {
}
}
}
+
+class backupninja::client::duplicity inherits backupninja::client {
+
+ if !defined(Package["duplicity"]) {
+ if $duplicity_ensure_version == '' { $duplicity_ensure_version = 'installed' }
+ package { 'duplicity':
+ ensure => $duplicity_ensure_version,
+ }
+ }
+}
+