diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2022-09-16 23:04:08 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2022-09-16 23:04:08 +0200 |
commit | 01af1d05a2c3d95101921ca8cec9a03d9eea5150 (patch) | |
tree | cf3807d3eb4ae25e192271fe359ffd60c3fa050f /code/environments/production/modules/certregen/manifests/client.pp | |
download | puppet.LW-01af1d05a2c3d95101921ca8cec9a03d9eea5150.tar.gz puppet.LW-01af1d05a2c3d95101921ca8cec9a03d9eea5150.tar.bz2 puppet.LW-01af1d05a2c3d95101921ca8cec9a03d9eea5150.zip |
initial puppet.LW configuration
Diffstat (limited to 'code/environments/production/modules/certregen/manifests/client.pp')
-rw-r--r-- | code/environments/production/modules/certregen/manifests/client.pp | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/code/environments/production/modules/certregen/manifests/client.pp b/code/environments/production/modules/certregen/manifests/client.pp new file mode 100644 index 0000000..54eb153 --- /dev/null +++ b/code/environments/production/modules/certregen/manifests/client.pp @@ -0,0 +1,28 @@ +# Distribute the current Puppet CA certificate to client systems. +# +# To ensure the portability of this code and minimize dependencies, this class uses the `file` +# function to distribute the CA certificate instead of having end nodes directly fetch the +# certificate themselves. This means that Puppet installations using a master of master/CA server +# and compile nodes will need to run Puppet on the compile masters before the CA cert can be +# distributed to the agents. +class certregen::client( + $manage_crl = true +) { + file { $::localcacert: + ensure => present, + content => file($settings::cacert, $settings::localcacert, '/dev/null'), + mode => '0644', + } + + $pe_build = getvar('::pe_build') + $crl_managed_by_pe = ($pe_build and versioncmp($pe_build, '3.7.0') >= 0) and is_classified_with('puppet_enterprise::profile::master') + $needs_crl = $manage_crl and !defined(File[$::hostcrl]) and !$crl_managed_by_pe + + if $needs_crl { + file { $::hostcrl: + ensure => present, + content => file($settings::cacrl, $settings::hostcrl, '/dev/null'), + mode => '0644', + } + } +} |