aboutsummaryrefslogtreecommitdiff
path: root/manifests/client.pp
diff options
context:
space:
mode:
authorMicah Anderson <micah@riseup.net>2008-05-22 03:42:34 +0000
committerMicah Anderson <micah@riseup.net>2008-05-22 03:42:34 +0000
commit2511ea17e91c02466f399105cb3deca189048f1f (patch)
tree71d4ab1090415e8b2995af85f55801e821982d16 /manifests/client.pp
parent9738f45eb4517a47bda18b02aa41d9e000fa413d (diff)
downloadpuppet-backupninja-2511ea17e91c02466f399105cb3deca189048f1f.tar.gz
puppet-backupninja-2511ea17e91c02466f399105cb3deca189048f1f.tar.bz2
try to manage the backupninja keys in a sane way, but might be totally insane
Diffstat (limited to 'manifests/client.pp')
-rw-r--r--manifests/client.pp44
1 files changed, 44 insertions, 0 deletions
diff --git a/manifests/client.pp b/manifests/client.pp
index fed83e6..fb0c934 100644
--- a/manifests/client.pp
+++ b/manifests/client.pp
@@ -3,10 +3,54 @@ class backupninja::client {
'' => "/etc/backup.d",
default => $cfg_override,
}
+ $real_keystore = $backupkeystore ? {
+ '' => '$fileserver/keys/backupkeys',
+ default => $backupkeystore,
+ }
+ $real_keytype = $backupkeytype ? {
+ '' => 'rsa',
+ default => $backupkeytype,
+ }
+ $real_keydestination = $keydestination ? {
+ '' => '/root/.ssh',
+ default => $keydestination,
+ }
+ $real_keyowner = $keyowner ? {
+ '' => 0,
+ default => $keyowner,
+ }
+ $real_keygroup = $keygroup ? {
+ '' => 0,
+ default => $keygroup,
+ }
+ $real_keymanage = $keymanage ? {
+ '' => true,
+ default => $keymanage
+ }
package { 'backupninja':
ensure => '0.9.5-3';
}
file { $configdir:
ensure => directory
}
+ define key (
+ $sourcekey='$real_keystore/${name}_id_$real_keytype',
+ $destination='$real_keydestination', $key_type=$real_keytype,
+ $key_owner=$real_keyowner, $key_group=$real_keygroup, $installkey=$real_keymanage
+ )
+ case $installkey {
+ true: {
+ {
+ file { "$destination":
+ ensure => directory,
+ mode => 700, owner => $keyowner, group => $keygroup,
+ }
+ file { "$destination/id_$keytype":
+ source => "$sourcekey",
+ mode => 0400, owner => $keyowner, group => $keygroup,
+ require => File["$destination"],
+ }
+ }
+ }
+ }
}