aboutsummaryrefslogtreecommitdiff
path: root/manifests/cert.pp
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2023-01-07 13:00:34 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2023-01-07 13:00:34 +0100
commit29bd0bfdbc60cc8ade477f306f114af734cf7aba (patch)
treeceaa092216b7eaaf9126a93af40e430dfbd70d85 /manifests/cert.pp
parentUpdate fact to match pdk linter. (diff)
downloadhugonikanor-letsencrypt-29bd0bfdbc60cc8ade477f306f114af734cf7aba.tar.gz
hugonikanor-letsencrypt-29bd0bfdbc60cc8ade477f306f114af734cf7aba.tar.xz
Major cleanup.
Diffstat (limited to 'manifests/cert.pp')
-rw-r--r--manifests/cert.pp27
1 files changed, 16 insertions, 11 deletions
diff --git a/manifests/cert.pp b/manifests/cert.pp
index a8cc94e..061ace1 100644
--- a/manifests/cert.pp
+++ b/manifests/cert.pp
@@ -1,29 +1,34 @@
-# A single certificate
+# @summary A single certificate
# TODO possibly default cert_name to $::fqdn instead
+# @param cert_name Name of the certificate
+# @param ensure Present or absent (currently does nothing)
+# @param include_self Should the certificates name be one of its domains?
define letsencrypt::cert (
- String $cert_name => $::name,
- Enum['present', 'absent'] $ensure => 'present',
- Boolean $include_self => true,
+ String $cert_name = $name,
+ Enum['present', 'absent'] $ensure = 'present',
+ Boolean $include_self = true,
) {
-
# TODO these env files are systemd specific
# TODO concat::fragment is clumsy, look at re-implementing the
# functionallity internally
concat { "${letsencrypt::config_dir}/env/${cert_name}":
- ensure => present,
- warn => true,
+ ensure => present,
+ warn => true,
}
- concat::fragment { "letsencrypt ${cert_name} preamble":
- target => "${letsencrypt::config_dir}/env/${cert_name}",
- order => '0',
- content => @(EOF)
+ $cert_preamble = @(EOF)
AUTHENTICATOR = ''
POST_HOOK = ''
DOMAINS =
|- EOF
+
+ concat::fragment { "letsencrypt ${cert_name} preamble":
+ target => "${letsencrypt::config_dir}/env/${cert_name}",
+ order => '0',
+ content => $cert_preamble,
}
+
concat::fragment { "letsencrypt ${cert_name} postamble":
target => "${letsencrypt::config_dir}/env/${cert_name}",
order => '99',