Mercurial > repos > other > Puppet
comparison modules/website/manifests/https/multitld.pp @ 150:060f81349dd6 puppet-3.6
Restructure HTTPS certificates and multiple TLD sites for clarity
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Tue, 28 Mar 2017 20:46:35 +0100 |
parents | 4b42f65ae875 |
children | 4519b727cc4c |
comparison
equal
deleted
inserted
replaced
149:af30a5eb468f | 150:060f81349dd6 |
---|---|
4 $priority = undef, | 4 $priority = undef, |
5 $base = $name, | 5 $base = $name, |
6 $main_tld = $website::tld, | 6 $main_tld = $website::tld, |
7 $extra_tlds = $website::extra_tlds, | 7 $extra_tlds = $website::extra_tlds, |
8 $ssl_ca_chain = undef, | 8 $ssl_ca_chain = undef, |
9 $letsencrypt_name = undef, | |
9 $docroot_owner = undef, | 10 $docroot_owner = undef, |
10 $docroot_group = undef, | 11 $docroot_group = undef, |
11 $custom_fragment = undef, | 12 $custom_fragment = undef, |
12 $force_no_index = undef, | 13 $force_no_index = undef, |
13 $force_no_www = undef, | 14 $force_no_www = undef, |
19 | 20 |
20 validate_array($extra_tlds) | 21 validate_array($extra_tlds) |
21 validate_re($main_tld, '^[a-z]+(\.[a-z]+)?', 'TLD must be in the form "com" or "co.uk"') | 22 validate_re($main_tld, '^[a-z]+(\.[a-z]+)?', 'TLD must be in the form "com" or "co.uk"') |
22 $alias = domain_to_short_domain($base) | 23 $alias = domain_to_short_domain($base) |
23 | 24 |
24 if $base == $alias { | 25 $base_aliases = prefix($extra_tlds, "${base}.") |
25 $main_alias = [] | 26 if $base != $alias { |
27 $aliases = concat(concat($base_aliases, "${alias}.${main_tld}"), | |
28 prefix($extra_tlds, "${alias}.")) | |
26 } else { | 29 } else { |
27 $main_alias = [ "${alias}.${main_tld}" ] | 30 $aliases = $base_aliases |
28 } | 31 } |
32 | |
29 $main_domain = "${base}.${main_tld}" | 33 $main_domain = "${base}.${main_tld}" |
30 website::https { $main_domain: | 34 website::https { $main_domain: |
31 priority => $priority, | 35 priority => $priority, |
32 ip => $ip, | 36 ip => $ip, |
33 serveraliases => $main_alias, | 37 serveraliases => $aliases, |
34 docroot => $docroot, | 38 docroot => $docroot, |
35 docroot_owner => $docroot_owner, | 39 docroot_owner => $docroot_owner, |
36 docroot_group => $docroot_group, | 40 docroot_group => $docroot_group, |
37 ssl_ca_chain => $ssl_ca_chain, | 41 ssl_ca_chain => $ssl_ca_chain, |
42 letsencrypt_name => $letsencrypt_name, | |
38 custom_fragment => $custom_fragment, | 43 custom_fragment => $custom_fragment, |
39 force_no_index => $force_no_index, | 44 force_no_index => $force_no_index, |
40 force_no_www => $force_no_www, | 45 force_no_www => $force_no_www, |
41 } | 46 } |
42 | |
43 if count($extra_tlds) > 0 { | |
44 $base_extras = prefix($extra_tlds, "${base}.") | |
45 | |
46 website::https::multitldredir { $base_extras: | |
47 ip => $ip, | |
48 main_domain => $main_domain, | |
49 ssl_ca_chain => $ssl_ca_chain, | |
50 docroot => $docroot, | |
51 docroot_owner => $docroot_owner, | |
52 docroot_group => $docroot_group, | |
53 } | |
54 } | |
55 } | 47 } |