X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fssl%2Fmanifests%2Fservice.pp;h=f0400525dd76313b9145e5911dacd9be03e0e67c;hb=95f18880c7ec083620b8fb1653452ee79578385f;hp=d562af88580b41f2bc78dfce8762ee6a7f04670d;hpb=4eb5c27207b110470610fb88142430c4a1275213;p=mirror%2Fdsa-puppet.git diff --git a/modules/ssl/manifests/service.pp b/modules/ssl/manifests/service.pp index d562af885..f0400525d 100644 --- a/modules/ssl/manifests/service.pp +++ b/modules/ssl/manifests/service.pp @@ -1,4 +1,4 @@ -define ssl::service($ensure = present, $tlsaport = 443) { +define ssl::service($ensure = present, $tlsaport = 443, $notify = []) { $link_target = $ensure ? { present => link, absent => absent, @@ -7,14 +7,19 @@ define ssl::service($ensure = present, $tlsaport = 443) { file { "/etc/ssl/debian/certs/$name.crt": source => "puppet:///modules/ssl/servicecerts/${name}.crt", - notify => Exec['c_rehash /etc/ssl/debian/certs'], + notify => [ Exec['refresh_debian_hashes'], $notify ], + } + file { "/etc/ssl/debian/certs/$name.crt-chain": + source => [ "puppet:///modules/ssl/chains/${name}.crt", "puppet:///modules/ssl/servicecerts/${name}.crt" ], + notify => [ Exec['refresh_debian_hashes'], $notify ], + links => follow, } if $tlsaport > 0 { - dnsextras::tlsa_record{ "tlsa-${tlsaport}": - zone => 'debian.org', + dnsextras::tlsa_record{ "tlsa-${name}-${tlsaport}": + zone => 'debian.org', certfile => "/etc/puppet/modules/ssl/files/servicecerts/${name}.crt", - port => $tlsaport, + port => $tlsaport, hostname => "$name", } }