Merge "add mongodb_replica_set option to ceilometer module"

This commit is contained in:
Jenkins 2015-11-06 08:14:52 +00:00 committed by Gerrit Code Review
commit d6572a3c1e
2 changed files with 19 additions and 2 deletions

View File

@ -35,6 +35,12 @@
# If set, use this value for max_overflow with sqlalchemy.
# (Optional) Defaults to 20.
#
# [*mongodb_replica_set*]
# The name of the replica set which is used to connect to MongoDB
# database. If it is set, MongoReplicaSetClient will be used instead
# of MongoClient.
# (Optional) Defaults to undef (string value).
#
# [*sync_db*]
# enable dbsync.
#
@ -47,6 +53,7 @@ class ceilometer::db (
$database_retry_interval = 10,
$database_max_overflow = 20,
$sync_db = true,
$mongodb_replica_set = undef,
) {
include ::ceilometer::params
@ -68,6 +75,11 @@ class ceilometer::db (
}
/^mongodb:\/\//: {
$backend_package = $::ceilometer::params::pymongo_package_name
if $mongodb_replica_set {
ceilometer_config { 'database/mongodb_replica_set': value => $mongodb_replica_set; }
} else {
ceilometer_config { 'database/mongodb_replica_set': ensure => absent; }
}
}
/^sqlite:\/\//: {
$backend_package = $::ceilometer::params::sqlite_package_name

View File

@ -13,6 +13,7 @@ describe 'ceilometer::db' do
it { is_expected.to contain_ceilometer_config('database/min_pool_size').with_value('1') }
it { is_expected.to contain_ceilometer_config('database/max_retries').with_value('10') }
it { is_expected.to contain_ceilometer_config('database/retry_interval').with_value('10') }
it { is_expected.not_to contain_ceilometer_config('database/mongodb_replica_set') }
end
@ -33,12 +34,14 @@ describe 'ceilometer::db' do
it { is_expected.to contain_ceilometer_config('database/min_pool_size').with_value('2') }
it { is_expected.to contain_ceilometer_config('database/max_retries').with_value('11') }
it { is_expected.to contain_ceilometer_config('database/retry_interval').with_value('11') }
it { is_expected.to contain_ceilometer_config('database/mongodb_replica_set').with_ensure( 'absent' ) }
end
context 'with mongodb backend' do
context 'with mongodb backend and replica set' do
let :params do
{ :database_connection => 'mongodb://localhost:1234/ceilometer', }
{ :database_connection => 'mongodb://localhost:1234/ceilometer',
:mongodb_replica_set => 'foobar' }
end
it 'install the proper backend package' do
@ -49,6 +52,8 @@ describe 'ceilometer::db' do
)
end
it { is_expected.to contain_ceilometer_config('database/mongodb_replica_set').with_value( 'foobar' ) }
end