Puppet Class: panko::expirer
- Defined in:
- manifests/expirer.pp
Overview
Class: panko::expirer
Setups Panko Expirer service to enable TTL feature.
Parameters
[*ensure*]
(optional) The state of cron job.
Defaults to present.
[*minute*]
(optional) Defaults to '1'.
[*hour*]
(optional) Defaults to '0'.
[*monthday*]
(optional) Defaults to '*'.
[*month*]
(optional) Defaults to '*'.
[*weekday*]
(optional) Defaults to '*'.
[*maxdelay*]
(optional) In Seconds. Should be a positive integer.
Induces a random delay before running the cronjob to avoid running
all cron jobs at the same time on all hosts this job is configured.
Defaults to 0.
[*events_delete_batch_size*]
(optional) Limit number of deleted events in single purge run.
Defaults to $::os_service_default.
DEPRECATED PARAMETERS
[*enable_cron*]
(optional) Whether to configure a crontab entry to run the expiry.
When set to False, Puppet will try to remove the crontab.
Defaults to undef,
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
# File 'manifests/expirer.pp', line 44
class panko::expirer (
$ensure = 'present',
$minute = 1,
$hour = 0,
$monthday = '*',
$month = '*',
$weekday = '*',
$maxdelay = 0,
$events_delete_batch_size = $::os_service_default,
# DEPRECATED PARAMETERS
$enable_cron = undef,
) {
include panko::params
include panko::deps
if $enable_cron != undef {
warning('The panko::expirer::enable_cron is deprecated and will be removed \
in a future release. Use panko::expirer::ensure instead')
if $enable_cron {
$ensure_real = 'present'
} else {
$ensure_real = 'absent'
}
} else {
$ensure_real = $ensure
}
if $maxdelay == 0 {
$sleep = ''
} else {
$sleep = "sleep `expr \${RANDOM} \\% ${maxdelay}`; "
}
panko_config { 'database/events_delete_batch_size':
value => $events_delete_batch_size
}
cron { 'panko-expirer':
ensure => $ensure_real,
command => "${sleep}${panko::params::expirer_command}",
environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh',
user => 'panko',
minute => $minute,
hour => $hour,
monthday => $monthday,
month => $month,
weekday => $weekday,
require => Anchor['panko::install::end'],
}
}
|