X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fssl%2Fmanifests%2Finit.pp;h=26c82252cf690d8320a784254505db15c757e266;hb=3e90e0de0b2ec2f9e1236a1d6609e8221a094045;hp=c52700f92102c8d8177c936852a7b89d6ce9b0b6;hpb=cbbe0ac60e700aa827837b12eaa8001e6a39f2a5;p=mirror%2Fdsa-puppet.git diff --git a/modules/ssl/manifests/init.pp b/modules/ssl/manifests/init.pp index c52700f92..26c82252c 100644 --- a/modules/ssl/manifests/init.pp +++ b/modules/ssl/manifests/init.pp @@ -9,6 +9,16 @@ class ssl { ; } + file { '/etc/ssl/servicecerts': + ensure => directory, + mode => '0755', + purge => true, + recurse => true, + force => true, + source => 'puppet:///modules/ssl/servicecerts/', + notify => Exec['make_new_service_links'] + } + file { '/etc/ssl/debian': ensure => directory, mode => '0755', @@ -37,7 +47,7 @@ class ssl { } file { '/etc/ssl/debian/keys/thishost.key': source => "puppet:///modules/ssl/clientcerts/${::fqdn}.key", - mode => '0440' + mode => '0440', group => ssl-cert, require => Package['ssl-cert'], } @@ -60,6 +70,23 @@ class ssl { require => Package['ssl-cert'], } + exec { 'make_new_service_links': + command => 'cp -f --symbolic-link ../servicecerts/* .', + cwd => '/etc/ssl/certs', + refreshonly => true, + notify => Exec['cleanup_dead_links'] + } + + exec { 'cleanup_dead_links': + command => 'find -L /etc/ssl/certs -mindepth 1 -maxdepth 1 -type l -delete', + refreshonly => true, + notify => Exec['c_rehash /etc/ssl/certs'] + } + + exec { 'c_rehash /etc/ssl/certs': + refreshonly => true, + } + exec { 'c_rehash /etc/ssl/debian/certs': refreshonly => true, }