diff --git a/site/profiles/manifests/puppet/puppetca.pp b/site/profiles/manifests/puppet/puppetca.pp index fae0a9e..4e6233b 100644 --- a/site/profiles/manifests/puppet/puppetca.pp +++ b/site/profiles/manifests/puppet/puppetca.pp @@ -43,12 +43,15 @@ class profiles::puppet::puppetca ( source => '/etc/puppetlabs/puppet/ssl/crl.pem.latest', require => File['/etc/puppetlabs/puppet/ssl/crl.pem.latest'], } - # add a execstartpost to the puppetserver.service + # copy the latest crl when restarting systemd::manage_dropin { 'copy_crl.conf': ensure => present, unit => 'puppetserver.service', service_entry => { - 'ExecStartPost' => '/usr/bin/sleep 2; /bin/cp /etc/puppetlabs/puppet/ssl/crl.pem.latest /etc/puppetlabs/puppet/ssl/crl.pem', + 'ExecStartPost' => [ + '/usr/bin/sleep 2', + '/bin/cp /etc/puppetlabs/puppet/ssl/crl.pem.latest /etc/puppetlabs/puppet/ssl/crl.pem', + ], }, require => File['/etc/puppetlabs/puppet/ssl/crl.pem'], } diff --git a/site/profiles/manifests/puppet/server.pp b/site/profiles/manifests/puppet/server.pp index 5d0c50b..09b27e1 100644 --- a/site/profiles/manifests/puppet/server.pp +++ b/site/profiles/manifests/puppet/server.pp @@ -71,4 +71,14 @@ class profiles::puppet::server ( hasstatus => true, hasrestart => true, } + # generate puppet types when restarting + systemd::manage_dropin { 'generate_types.conf': + ensure => present, + unit => 'puppetserver.service', + service_entry => { + 'ExecStartPost' => [ + "/opt/puppetlabs/bin/puppet generate types --environmentpath ${codedir}/environments", + ], + }, + } }