aboutsummaryrefslogtreecommitdiff
path: root/manifests/renew/systemd
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2023-01-10 12:56:33 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2023-01-12 15:07:57 +0100
commit0a07215d422f8f606a41d822436e6c6dd93d001f (patch)
tree3e335e7fb5e3b03b90fdef953bf7be8afef73ff8 /manifests/renew/systemd
parentConvert to pdk module. (diff)
downloadhugonikanor-letsencrypt-0a07215d422f8f606a41d822436e6c6dd93d001f.tar.gz
hugonikanor-letsencrypt-0a07215d422f8f606a41d822436e6c6dd93d001f.tar.xz
Working product.
Diffstat (limited to '')
-rw-r--r--manifests/renew/systemd.pp19
-rw-r--r--manifests/renew/systemd/setup.pp23
2 files changed, 30 insertions, 12 deletions
diff --git a/manifests/renew/systemd.pp b/manifests/renew/systemd.pp
index 8c63f23..f64e7e5 100644
--- a/manifests/renew/systemd.pp
+++ b/manifests/renew/systemd.pp
@@ -1,16 +1,11 @@
-# Handles renewal certificates through systemd timers
-# @param service_name Target name of the service file
-# @param service_path Where the service file should be installed
# @api private
-class letsencrypt::renew::systemd (
- String $service_name = 'letsencrypt-renew',
- String $service_path = '/etc/systemd/system',
+define letsencrypt::renew::systemd (
+ String $cert_name = $name
) {
- file { "${service_path}/${service_name}@.service":
- source => "puppet:///modules/${module_name}/letsencrypt-renew.service",
- }
-
- file { "${service_path}/${service_name}@.timer":
- source => "puppet:///modules/${module_name}/letsencrypt-renew.timer",
+ require letsencrypt::renew::systemd::setup
+ $service = $letsencrypt::renew::systemd::setup::service_name
+ service { "${service}@${cert_name}.timer":
+ ensure => 'running',
+ enable => true,
}
}
diff --git a/manifests/renew/systemd/setup.pp b/manifests/renew/systemd/setup.pp
new file mode 100644
index 0000000..5839efc
--- /dev/null
+++ b/manifests/renew/systemd/setup.pp
@@ -0,0 +1,23 @@
+# Handles renewal certificates through systemd timers
+# @param service_name Target name of the service file
+# @param service_path Where the service file should be installed
+# @api private
+class letsencrypt::renew::systemd::setup (
+ String $service_name = 'letsencrypt-renew',
+ String $service_path = '/etc/systemd/system',
+) {
+ file { "${service_path}/${service_name}@.service":
+ source => "puppet:///modules/${module_name}/letsencrypt-renew.service",
+ notify => Exec['systemctl daemon-reload'],
+ }
+
+ file { "${service_path}/${service_name}@.timer":
+ source => "puppet:///modules/${module_name}/letsencrypt-renew.timer",
+ notify => Exec['systemctl daemon-reload'],
+ }
+
+ exec { 'systemctl daemon-reload':
+ refreshonly => true,
+ provider => shell,
+ }
+}