Allow configuration of limit of batch size for exirer

Adds new configuration option for panko-expirer for limiting detele
batch size.

Change-Id: I7ca0ab9e42352645e463c49f8ce58793115543c0
(cherry picked from commit 89c3f384f0)
changes/65/755265/2
Martin Magr 2 years ago committed by Takashi Kajinami
parent 4712c01716
commit c954ebf149
  1. 21
      manifests/expirer.pp
  2. 6
      releasenotes/notes/batchsize-9f201b538828370d.yaml
  3. 13
      spec/classes/panko_expirer_spec.rb

@ -25,13 +25,18 @@
# [*weekday*]
# (optional) Defaults to '*'.
#
# [*events_delete_batch_size*]
# (optional) Limit number of deleted events in single purge run.
# Defaults to $::os_service_default.
#
class panko::expirer (
$enable_cron = true,
$minute = 1,
$hour = 0,
$monthday = '*',
$month = '*',
$weekday = '*',
$enable_cron = true,
$minute = 1,
$hour = 0,
$monthday = '*',
$month = '*',
$weekday = '*',
$events_delete_batch_size = $::os_service_default,
) {
include panko::params
@ -45,6 +50,10 @@ class panko::expirer (
$ensure = 'absent'
}
panko_config { 'database/events_delete_batch_size':
value => $events_delete_batch_size
}
cron { 'panko-expirer':
ensure => $ensure,
command => $panko::params::expirer_command,

@ -0,0 +1,6 @@
---
features:
- |
Added events_delete_batch_size parameter to the expirer class to enable configuration
of the parameter with same name. It serves the purpose of limiting number of deleted
events in single purge run.

@ -9,6 +9,7 @@ describe 'panko::expirer' do
context 'with default' do
it { is_expected.to contain_class('panko::deps') }
it { is_expected.to contain_class('panko::params') }
it { is_expected.to contain_panko_config('database/events_delete_batch_size').with_value('<SERVICE DEFAULT>') }
it { is_expected.to contain_cron('panko-expirer').with(
:ensure => 'present',
@ -23,6 +24,18 @@ describe 'panko::expirer' do
)}
end
context 'with overridden parameters' do
before do
params.merge!(
:events_delete_batch_size => 500
)
end
it { is_expected.to contain_class('panko::deps') }
it { is_expected.to contain_class('panko::params') }
it { is_expected.to contain_panko_config('database/events_delete_batch_size').with_value(500) }
end
context 'with cron not enabled' do
before do
params.merge!( :enable_cron => false )

Loading…
Cancel
Save