Puppet Class: bacula::puppetcerts
- Defined in:
- manifests/puppetcerts.pp
Overview
Class: bacula::puppetcerts
Copy puppet certificates to a place where Bacula daemons can find them. Note that this class depends on puppetagent::params class for locating Puppet’s SSL certificates.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'manifests/puppetcerts.pp', line 8
class bacula::puppetcerts {
include ::bacula::params
include ::puppetagent::params
File {
owner => $::os::params::adminuser,
group => $::bacula::params::bacula_group,
}
file { 'bacula-conf-dir':
ensure => directory,
name => $::bacula::params::conf_dir,
group => $::os::params::admingroup,
mode => '0755',
require => Class['bacula::common'],
}
file { 'bacula-ssl-dir':
ensure => directory,
name => $::bacula::params::ssl_dir,
mode => '0750',
require => File['bacula-conf-dir'],
}
$keys = { "${::puppetagent::params::ssldir}/certs/${::fqdn}.pem" => "${::bacula::params::ssl_dir}/bacula.crt",
"${::puppetagent::params::ssldir}/private_keys/${::fqdn}.pem" => "${::bacula::params::ssl_dir}/bacula.key",
"${::puppetagent::params::ssldir}/certs/ca.pem" => "${::bacula::params::ssl_dir}/bacula-ca.crt", }
$keys.each |$key| {
exec { $key[1]:
command => "cp -f ${key[0]} ${key[1]}",
unless => "cmp ${key[0]} ${key[1]}",
path => ['/bin', '/usr/bin/' ],
require => File['bacula-ssl-dir'],
}
file { $key[1]:
mode => '0640',
require => Exec[$key[1]],
}
}
}
|