Only run ceilometer::db::sync on bootstrap node

The ceilometer::db::sync is included by default in ceilometer::db but we
only want it to run on the bootstrap node.  This change passes the
sync_db parameter to ceilometer::db to manage the db sync process rather
than trying to manage the inclusion of ceilometer::db::sync within the
profile class.

Change-Id: Ib56db1a90dd6fbfe7582fc57b7728df81942cce2
Closes-Bug: #1629373
This commit is contained in:
Alex Schultz
2016-09-30 09:55:24 -06:00
parent 41dac693cf
commit 8e70fc19ec
2 changed files with 11 additions and 7 deletions

View File

@@ -60,10 +60,6 @@ class tripleo::profile::base::ceilometer::collector (
include ::tripleo::profile::base::ceilometer
if $step >= 3 and $sync_db {
include ::ceilometer::db::sync
}
if $step >= 4 or ($step >= 3 and $sync_db) {
if downcase($ceilometer_backend) == 'mongodb' {
if empty($mongodb_node_ips) {
@@ -88,10 +84,13 @@ class tripleo::profile::base::ceilometer::collector (
$ceilometer_mongodb_conn_string = "mongodb://${mongo_node_string}/ceilometer?replicaSet=${mongodb_replset}"
class { '::ceilometer::db' :
sync_db => $sync_db,
database_connection => $ceilometer_mongodb_conn_string,
}
} else {
include ::ceilometer::db
class { '::ceilometer::db' :
sync_db => $sync_db,
}
}
include ::ceilometer::collector
include ::ceilometer::dispatcher::gnocchi

View File

@@ -52,6 +52,7 @@ describe 'tripleo::profile::base::ceilometer::collector' do
is_expected.to contain_class('tripleo::profile::base::ceilometer::collector')
is_expected.to contain_class('ceilometer::db::sync')
is_expected.to contain_class('ceilometer::db').with(
:sync_db => true,
:database_connection => 'mongodb://[::1]:27017,[fe80::ca5b:76ff:fe4b:be3b]:27017/ceilometer?replicaSet=replicaset'
)
end
@@ -72,6 +73,9 @@ describe 'tripleo::profile::base::ceilometer::collector' do
is_expected.to contain_class('ceilometer::db').without(
:database_connection => 'mongodb://127.0.0.1:27017/ceilometer?replicaSet=replicaset'
)
is_expected.to contain_class('ceilometer::db').with(
:sync_db => true
)
end
end
@@ -98,6 +102,7 @@ describe 'tripleo::profile::base::ceilometer::collector' do
it 'should trigger complete configuration' do
is_expected.to contain_class('ceilometer::db::sync')
is_expected.to contain_class('ceilometer::db').with(
:sync_db => true,
:database_connection => 'mongodb://127.0.0.1:27017/ceilometer?replicaSet=replicaset'
)
is_expected.to contain_class('ceilometer::collector')
@@ -114,9 +119,9 @@ describe 'tripleo::profile::base::ceilometer::collector' do
} }
it 'should trigger complete configuration' do
#TODO(aschultz): LP#1629373
#is_expected.to_not contain_class('ceilometer::db::sync')
is_expected.to_not contain_class('ceilometer::db::sync')
is_expected.to contain_class('ceilometer::db').with(
:sync_db => false,
:database_connection => 'mongodb://127.0.0.1:27017/ceilometer?replicaSet=replicaset'
)
is_expected.to contain_class('ceilometer::collector')