Make 'alarm_history_time_to_live' parameter configurable

alarm_history_time_to_live is new ceilometer parameter:
http://specs.openstack.org/openstack/ceilometer-specs/specs/liberty/delete-alarmhistory.html

Make time_to_live parameter deprecated in favor of metering_time_to_live

Change-Id: Ifd16853779101202c4d6ea5a7237aeceeb0ade7c
This commit is contained in:
iberezovskiy 2015-09-14 18:00:22 +03:00
parent 93f2f4a222
commit 2d669a5d6e
3 changed files with 35 additions and 25 deletions

View File

@ -21,11 +21,6 @@
#
# === Parameters
#
# [*time_to_live*]
# (optional) Number of seconds that samples are kept in the database.
# Should be a valid integer
# Defaults to '-1' to disable TTL and keep forever the datas.
#
# [*enable_cron*]
# (optional) Whether to configure a crontab entry to run the expiry.
# Defaults to true.
@ -45,21 +40,28 @@
# [*weekday*]
# (optional) Defaults to '*'.
#
# [*time_to_live*]
# (optional) DEPRECATED. Number of seconds that samples are kept in the database.
# Should be a valid integer
# Defaults to '-1' to disable TTL and keep forever the datas.
class ceilometer::expirer (
$time_to_live = '-1',
$enable_cron = True,
$minute = 1,
$hour = 0,
$monthday = '*',
$month = '*',
$weekday = '*',
# Deprecated parameters
$time_to_live = '-1',
) {
include ::ceilometer::params
Package<| title == 'ceilometer-common' |> -> Class['ceilometer::expirer']
warning('Parameter "time_to_live" is deprecated and will be removed in next release. Use metering_time_to_live in "ceilometer" class instead.')
ceilometer_config {
'database/time_to_live': value => $time_to_live;
}

View File

@ -15,6 +15,10 @@
# number of seconds that samples are kept in the database for
# (<= 0 means forever)
# Defaults to -1
# [*alarm_history_time_to_live*]
# number of seconds that alarm histories are kept in the database for
# (<= 0 means forever)
# Defaults to -1
# [*metering_secret*]
# secret key for signing messages. Mandatory.
# [*notification_topics*]
@ -111,6 +115,7 @@ class ceilometer(
$http_timeout = '600',
$event_time_to_live = '-1',
$metering_time_to_live = '-1',
$alarm_history_time_to_live = '-1',
$metering_secret = false,
$notification_topics = ['notifications'],
$package_ensure = 'present',
@ -294,15 +299,16 @@ class ceilometer(
# Once we got here, we can act as an honey badger on the rpc used.
ceilometer_config {
'DEFAULT/http_timeout' : value => $http_timeout;
'DEFAULT/rpc_backend' : value => $rpc_backend;
'publisher/metering_secret' : value => $metering_secret, secret => true;
'DEFAULT/debug' : value => $debug;
'DEFAULT/verbose' : value => $verbose;
'DEFAULT/use_stderr' : value => $use_stderr;
'DEFAULT/notification_topics' : value => join($notification_topics, ',');
'database/event_time_to_live' : value => $event_time_to_live;
'database/metering_time_to_live' : value => $metering_time_to_live;
'DEFAULT/http_timeout' : value => $http_timeout;
'DEFAULT/rpc_backend' : value => $rpc_backend;
'publisher/metering_secret' : value => $metering_secret, secret => true;
'DEFAULT/debug' : value => $debug;
'DEFAULT/verbose' : value => $verbose;
'DEFAULT/use_stderr' : value => $use_stderr;
'DEFAULT/notification_topics' : value => join($notification_topics, ',');
'database/event_time_to_live' : value => $event_time_to_live;
'database/metering_time_to_live' : value => $metering_time_to_live;
'database/alarm_history_time_to_live' : value => $alarm_history_time_to_live;
}
# Log configuration

View File

@ -4,15 +4,16 @@ describe 'ceilometer' do
let :params do
{
:http_timeout => '600',
:event_time_to_live => '604800',
:metering_time_to_live => '604800',
:metering_secret => 'metering-s3cr3t',
:package_ensure => 'present',
:debug => 'False',
:log_dir => '/var/log/ceilometer',
:verbose => 'False',
:use_stderr => 'True',
:http_timeout => '600',
:event_time_to_live => '604800',
:metering_time_to_live => '604800',
:alarm_history_time_to_live => '604800',
:metering_secret => 'metering-s3cr3t',
:package_ensure => 'present',
:debug => 'False',
:log_dir => '/var/log/ceilometer',
:verbose => 'False',
:use_stderr => 'True',
}
end
@ -38,9 +39,10 @@ describe 'ceilometer' do
shared_examples_for 'ceilometer' do
it 'configures time to live for events and meters' do
it 'configures time to live for events, meters and alarm histories' do
is_expected.to contain_ceilometer_config('database/event_time_to_live').with_value( params[:event_time_to_live] )
is_expected.to contain_ceilometer_config('database/metering_time_to_live').with_value( params[:metering_time_to_live] )
is_expected.to contain_ceilometer_config('database/alarm_history_time_to_live').with_value( params[:alarm_history_time_to_live] )
end
it 'configures timeout for HTTP requests' do