Allow to change archive destination

Adds 'destination' parameter to nova::cron::archive_deleted_rows

Change-Id: Ic674f4d39bc88f89abfeb0ce99a571c2534e57e4
This commit is contained in:
Martin Mágr 2015-07-31 16:14:56 +02:00
parent 3543216ded
commit 459d075c61
2 changed files with 30 additions and 14 deletions

View File

@ -45,18 +45,23 @@
# (optional) User with access to nova files.
# Defaults to 'nova'.
#
# [*destination*]
# (optional) Path to file to which rows should be archived
# Defaults to '/var/log/nova/nova-rowsflush.log'.
#
class nova::cron::archive_deleted_rows (
$minute = 1,
$hour = 0,
$monthday = '*',
$month = '*',
$weekday = '*',
$max_rows = '100',
$user = 'nova',
$minute = 1,
$hour = 0,
$monthday = '*',
$month = '*',
$weekday = '*',
$max_rows = '100',
$user = 'nova',
$destination = '/var/log/nova/nova-rowsflush.log'
) {
cron { 'nova-manage db archive_deleted_rows':
command => "nova-manage db archive_deleted_rows --max_rows ${max_rows} >>/var/log/nova/nova-rowsflush.log 2>&1",
command => "nova-manage db archive_deleted_rows --max_rows ${max_rows} >>${destination} 2>&1",
environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh',
user => $user,
minute => $minute,

View File

@ -6,16 +6,27 @@ describe 'nova::cron::archive_deleted_rows' do
{ :osfamily => 'Debian' }
end
it 'configures a cron' do
is_expected.to contain_cron('nova-manage db archive_deleted_rows').with(
:command => 'nova-manage db archive_deleted_rows --max_rows 100 >>/var/log/nova/nova-rowsflush.log 2>&1',
:environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh',
:user => 'nova',
:minute => 1,
let :params do
{ :minute => 1,
:hour => 0,
:monthday => '*',
:month => '*',
:weekday => '*',
:max_rows => '100',
:user => 'nova',
:destination => '/var/log/nova/nova-rowsflush.log' }
end
it 'configures a cron' do
is_expected.to contain_cron('nova-manage db archive_deleted_rows').with(
:command => "nova-manage db archive_deleted_rows --max_rows #{params[:max_rows]} >>#{params[:destination]} 2>&1",
:environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh',
:user => params[:user],
:minute => params[:minute],
:hour => params[:hour],
:monthday => params[:monthday],
:month => params[:month],
:weekday => params[:weekday],
:require => 'Package[nova-common]',
)
end