Merge "add mongodb_replica_set option to ceilometer module"
This commit is contained in:
commit
d6572a3c1e
@ -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
|
||||
|
@ -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
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user