Mercurial > repos > other > Puppet
view modules/website/manifests/https/multitld.pp @ 236:4519b727cc4c puppet-3.6
Make Content-Security-Policy cleaner and easier to set
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Wed, 18 Dec 2019 21:22:50 +0000 |
parents | 060f81349dd6 |
children | f99974dc0f1a |
line wrap: on
line source
define website::https::multitld ( $docroot = undef, $ip = $website::primary_ip, $priority = undef, $base = $name, $main_tld = $website::tld, $extra_tlds = $website::extra_tlds, $ssl_ca_chain = undef, $letsencrypt_name = undef, $docroot_owner = undef, $docroot_group = undef, $custom_fragment = undef, $force_no_index = undef, $force_no_www = undef, $csp_override = undef, $csp_report_override = undef, ) { if ! defined(Class['website']) { fail('You must include the website base class before using any website defined resources') } validate_array($extra_tlds) validate_re($main_tld, '^[a-z]+(\.[a-z]+)?', 'TLD must be in the form "com" or "co.uk"') $alias = domain_to_short_domain($base) $base_aliases = prefix($extra_tlds, "${base}.") if $base != $alias { $aliases = concat(concat($base_aliases, "${alias}.${main_tld}"), prefix($extra_tlds, "${alias}.")) } else { $aliases = $base_aliases } $main_domain = "${base}.${main_tld}" website::https { $main_domain: priority => $priority, ip => $ip, serveraliases => $aliases, docroot => $docroot, docroot_owner => $docroot_owner, docroot_group => $docroot_group, ssl_ca_chain => $ssl_ca_chain, letsencrypt_name => $letsencrypt_name, custom_fragment => $custom_fragment, force_no_index => $force_no_index, force_no_www => $force_no_www, csp_override => $csp_override, csp_report_override => $csp_report_override, } }