aboutsummaryrefslogtreecommitdiff
path: root/manifests/client.pp
diff options
context:
space:
mode:
authorJerome Charaoui <jcharaoui@cmaisonneuve.qc.ca>2015-03-06 16:47:08 -0500
committerJerome Charaoui <jcharaoui@cmaisonneuve.qc.ca>2015-03-06 16:47:08 -0500
commit1ef94f1f2e49e032c6c416830345fc3b4beacb01 (patch)
tree4c6bc037e48bcfc75412d86f638e2cdbc118d8c7 /manifests/client.pp
parentfa28702f46db802494872272ca50e0b1c37de09e (diff)
parentbab96a631337b87dd6f168f663f5b24537f58a5c (diff)
downloadpuppet-backupninja-1ef94f1f2e49e032c6c416830345fc3b4beacb01.tar.gz
puppet-backupninja-1ef94f1f2e49e032c6c416830345fc3b4beacb01.tar.bz2
Merge branch 'master' of https://git-nadir.immerda.ch/puppet-backupninja
Conflicts: manifests/rdiff.pp
Diffstat (limited to 'manifests/client.pp')
-rw-r--r--manifests/client.pp30
1 files changed, 23 insertions, 7 deletions
diff --git a/manifests/client.pp b/manifests/client.pp
index 287b02f..7e689bf 100644
--- a/manifests/client.pp
+++ b/manifests/client.pp
@@ -46,8 +46,10 @@ class backupninja::client::defaults {
class backupninja::client inherits backupninja::client::defaults {
define key(
- $user = false, $host = false, $installkey=false, $keyowner=false,
- $keygroup=false, $keystore=false, $keytype=false)
+ $user = false, $host = false, $createkey=false, $installkey=false,
+ $keyowner=false, $keygroup=false, $keystore=false, $keystorefspath='',
+ $keytype=false,
+ $keydest=false, $keydestname=false )
{
$real_user = $user ? {
false => $name,
@@ -78,9 +80,23 @@ class backupninja::client inherits backupninja::client::defaults {
false => "${backupninja::client::defaults::real_keytype}",
default => $keytype,
}
+ $key_dest = $keydest ? {
+ false => "${backupninja::client::defaults::real_keydestination}",
+ default => $keydest,
+ }
+ $key_dest_name = $keydestname ? {
+ false => "id_$key_type",
+ default => $keydestname,
+ }
+ $key_dest_file = "${key_dest}/${key_dest_name}"
- $key_dest = "${backupninja::client::defaults::real_keydestination}"
- $key_dest_file = "$key_dest/id_$key_type"
+ if $createkey == true {
+ if $keystorefspath == false {
+ err("need to define a destination directory for sshkey creation!")
+ }
+ $ssh_keys = ssh_keygen("${keystorefspath}/${key_dest_name}")
+ }
+
case $install_key {
true: {
@@ -92,7 +108,7 @@ class backupninja::client inherits backupninja::client::defaults {
}
if !defined(File["$key_dest_file"]) {
file { "$key_dest_file":
- source => "${key_store}/${real_user}_id_${key_type}",
+ source => "${key_store}/${key_dest_name}",
mode => 0400, owner => $key_owner, group => $key_group,
require => File["$key_dest"],
}
@@ -109,7 +125,7 @@ class backupninja::client::maildir inherits backupninja::client::defaults {
package { 'rsync':
ensure => $rsync_ensure_version,
}
- }
+ }
}
class backupninja::client::rdiff_backup inherits backupninja::client::defaults {
@@ -150,4 +166,4 @@ class backupninja::client::sys inherits backupninja::client::defaults {
}
default: {}
}
-}
+}