summaryrefslogtreecommitdiff
path: root/manifests/init.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/init.pp')
-rw-r--r--manifests/init.pp43
1 files changed, 43 insertions, 0 deletions
diff --git a/manifests/init.pp b/manifests/init.pp
new file mode 100644
index 0000000..92cb32a
--- /dev/null
+++ b/manifests/init.pp
@@ -0,0 +1,43 @@
+class certbot(
+ $basedir = '/var/spool/certbot',
+ $owner = 'www-data',
+ $pre_hook = '',
+ $post_hook = '',
+) {
+
+ $tool = $::lsbdistcodename {
+ 'xenial' => 'letsencrypt',
+ default => 'certbot',
+ }
+
+ if $pre_hook != '' {
+ $real_pre_hook = "--pre-hook ${pre_hook}"
+ }
+
+ if $post_hook != '' {
+ $real_post_hook = "--post-hook \"${post_hook}\""
+ }
+
+ # Certbot support
+ file { $basedir:
+ ensure => directory,
+ owner => 'root',
+ group => $owner,
+ mode => '0750',
+ }
+
+ package { $tool:
+ ensure => present,
+ require => File[$basedir],
+ }
+
+ cron { 'certbot-renew':
+ command => '"/usr/bin/${tool} renew --standalone ${real_pre_hook} ${real_post_hook}",
+ user => 'root',
+ weekday => 1,
+ hour => "05",
+ minute => "30",
+ ensure => present,
+ require => Package[$tool],
+ }
+}