diff options
author | Micah <micah@leap.se> | 2016-05-24 10:19:40 -0400 |
---|---|---|
committer | Micah <micah@leap.se> | 2016-05-24 10:19:40 -0400 |
commit | 95e3216a7bf1a6ac08cd43d9fa8afd2f14e79f4f (patch) | |
tree | ce4df150e7500558ff288367a7818463bee560e0 /puppet/modules/backupninja/manifests/key.pp | |
parent | da6dd78cbb76c6b386e41e6ccc2f8f5a870f46bb (diff) | |
parent | e1ddddf2a0f81cdab84deeecec3e068d333b6ce8 (diff) |
Merge commit 'e1ddddf2a0f81cdab84deeecec3e068d333b6ce8' as 'puppet/modules/backupninja'
Diffstat (limited to 'puppet/modules/backupninja/manifests/key.pp')
-rw-r--r-- | puppet/modules/backupninja/manifests/key.pp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/puppet/modules/backupninja/manifests/key.pp b/puppet/modules/backupninja/manifests/key.pp new file mode 100644 index 00000000..9d34cdbd --- /dev/null +++ b/puppet/modules/backupninja/manifests/key.pp @@ -0,0 +1,41 @@ +# generate and deploy backupninja sshkeys +define backupninja::key( + $user = $name, + $createkey = false, + $keymanage = $backupninja::keymanage, + $keyowner = $backupninja::keyowner, + $keygroup = $backupninja::keygroup, + $keystore= $backupninja::keystore, + $keystorefspath = $backupninja::keystorefspath, + $keytype = $backupninja::keytype, + $keydest = $backupninja::keydest, + $keydestname = "id_${backupninja::keytype}" ) +{ + + # generate the key + if $createkey == true { + if $keystorefspath == false { + err('need to define a destination directory for sshkey creation!') + } + $ssh_keys = ssh_keygen("${keystorefspath}/${keydestname}") + } + + # deploy/manage the key + if $keymanage == true { + $keydestfile = "${keydest}/${keydestname}" + ensure_resource('file', $keydest, { + 'ensure' => 'directory', + 'mode' => '0700', + 'owner' => $keyowner, + 'group' => $keygroup + }) + ensure_resource('file', $keydestfile, { + 'ensure' => 'present', + 'source' => "${keystore}/${user}_id_${keytype}", + 'mode' => '0700', + 'owner' => $keyowner, + 'group' => $keygroup, + 'require' => File[$keydest], + }) + } +} |