From b1075daf36e8bd4cd7c04d8a0367f97a76fa66e0 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sat, 11 Jul 2020 02:16:45 -0400 Subject: add a cron wrapper --- modules/cron/manifests/init.pp | 4 ++++ modules/cron/manifests/job.pp | 18 +++++++++++++----- modules/cron/templates/job | 3 +++ 3 files changed, 20 insertions(+), 5 deletions(-) create mode 100644 modules/cron/templates/job (limited to 'modules/cron') diff --git a/modules/cron/manifests/init.pp b/modules/cron/manifests/init.pp index 8e073a4..b1fd335 100644 --- a/modules/cron/manifests/init.pp +++ b/modules/cron/manifests/init.pp @@ -11,6 +11,10 @@ class cron { content => template('cron/msmtprc'); '/etc/aliases': content => template('cron/aliases'); + "/etc/cronjobs": + ensure => directory, + recurse => true, + purge => true; } systemd::override { "cronie": diff --git a/modules/cron/manifests/job.pp b/modules/cron/manifests/job.pp index 0741378..41fc7f6 100644 --- a/modules/cron/manifests/job.pp +++ b/modules/cron/manifests/job.pp @@ -1,9 +1,17 @@ -define cron::job($frequency, $source = undef, $content = undef) { +define cron::job($frequency, $source = undef, $content = undef, $ensure = undef) { require cron - file { "/etc/cron.${frequency}/${name}": - source => $source, - content => $content, - mode => '0755'; + file { + "/etc/cronjobs/${name}": + ensure => $ensure, + source => $source, + content => $content, + mode => '0755', + require => File["/etc/cronjobs"]; + "/etc/cron.${frequency}/${name}": + ensure => $ensure, + content => template('cron/job'), + mode => '0755', + require => File["/etc/cronjobs/${name}"]; } } diff --git a/modules/cron/templates/job b/modules/cron/templates/job new file mode 100644 index 0000000..cb5eb18 --- /dev/null +++ b/modules/cron/templates/job @@ -0,0 +1,3 @@ +#!/bin/sh + +exec /etc/cronjobs/<%= @name %> -- cgit v1.2.3-54-g00ecf