1 define ssl::service($ensure = present, $tlsaport = 443, $notify = [], $key = false) {
2 if ($ensure == "ifstatic") {
3 $ssl_ensure = has_static_component($name) ? {
11 file { "/etc/ssl/debian/certs/$name.crt":
12 ensure => $ssl_ensure,
13 source => [ "puppet:///modules/ssl/servicecerts/${name}.crt", "puppet:///modules/ssl/from-letsencrypt/${name}.crt" ],
14 notify => [ Exec['refresh_debian_hashes'], $notify ],
16 file { "/etc/ssl/debian/certs/$name.crt-chain":
17 ensure => $ssl_ensure,
18 source => [ "puppet:///modules/ssl/chains/${name}.crt", "puppet:///modules/ssl/servicecerts/${name}.crt", "puppet:///modules/ssl/from-letsencrypt/${name}.crt-chain" ],
19 notify => [ $notify ],
22 file { "/etc/ssl/debian/certs/$name.crt-chained":
23 ensure => $ssl_ensure,
24 content => template('ssl/chained.erb'),
25 notify => [ $notify ],
28 file { "/etc/ssl/private/$name.key":
29 ensure => $ssl_ensure,
32 source => [ "puppet:///modules/ssl/keys/${name}.crt", "puppet:///modules/ssl/from-letsencrypt/${name}.key" ],
33 notify => [ $notify ],
38 if ($tlsaport > 0 and $ssl_ensure == "present") {
39 dnsextras::tlsa_record{ "tlsa-${name}-${tlsaport}":
41 certfile => [ "/etc/puppet/modules/ssl/files/servicecerts/${name}.crt", "/etc/puppet/modules/ssl/files/from-letsencrypt/${name}.crt" ],