diff --git a/.fixtures.yml b/.fixtures.yml index e12e6c99..bc768264 100644 --- a/.fixtures.yml +++ b/.fixtures.yml @@ -1,35 +1,38 @@ fixtures: repositories: + 'openstacklib': + repo: 'git://github.com/enovance/puppet-openstacklib' + ref: 'c374bed10f8af6000601fa407ebaef0833e1999c' 'cinder': repo: 'git://github.com/enovance/puppet-cinder' - ref: '9b33d7e1a7b88109e2b85c281534450bc6e53998' + ref: '77092bbc333e6e5fb512e7c5e88ad979435a23fd' 'keystone': repo: 'git://github.com/enovance/puppet-keystone.git' - ref: 'cf77bb23c059416b2d00a37f96a339f06d8c1e2c' + ref: 'e381349c1b838301dd730aa3cd146ecacc75aa7c' 'nova': repo: 'git://github.com/enovance/puppet-nova.git' - ref: 'ca16cbf55cfa3d2b62c7a78431fa75aadae97af4' + ref: 'ae171f93ed8dc60e6597ec03a7cfd7c7b70e65ed' 'glance': repo: 'git://github.com/enovance/puppet-glance.git' - ref: '7f439210b1197efc55ec148074a598b1cb1e3816' + ref: '78042d76c0854e16a55aaf05c03696d4d422e3c5' 'horizon': repo: 'git://github.com/enovance/puppet-horizon' - ref: '36383e90d1c4013d7989561b00ffcb08c76908de' + ref: '16b482ea21a70d8dd06ab4c98ac5a218399b0213' 'swift': repo: 'git://github.com/enovance/puppet-swift' - ref: 'f7d1385d6990492705ddaa228ffa544ca235913a' + ref: '3ea00440361ff2452561d2cce808d938e39cce56' 'neutron': repo: 'git://github.com/enovance/puppet-neutron' - ref: 'b2f8ab7dfc00ee7b2641f290cf9fbcf4fa547db8' + ref: '3445712b1818160899862e8cf114604cb946813f' 'ceilometer': repo: 'git://github.com/enovance/puppet-ceilometer' - ref: 'bea7794633943e454fe3e99ee119298c3d0000ff' + ref: '957c2120d0ee0b9db08bfddcce996686ba61d97d' 'heat': repo: 'git://github.com/enovance/puppet-heat' - ref: '025b8cb830d7fa476c4ab1a0b0228b88b5ba10c3' + ref: 'a95a9435dcb5f4b24b2e53213fe05b5466b46d6a' 'trove': repo: 'git://github.com/enovance/puppet-trove' - ref: '6cad2a1474ece5dad813821893f994b69df29fed' + ref: '7d9db32423b25dcc227ea6a6d43c90c63fde0d58' 'apt': repo: 'git://github.com/enovance/puppetlabs-apt.git' ref: '9b001af8775c7231ea2656b7eb43d6141b536f49' diff --git a/Puppetfile b/Puppetfile index d5315311..8ba8330b 100644 --- a/Puppetfile +++ b/Puppetfile @@ -16,37 +16,40 @@ # Puppetfile forge 'http://forge.puppetlabs.com' -# Core OpenStack projects +# OpenStack projects +mod 'openstacklib', + :git => 'git://github.com/enovance/puppet-openstacklib.git', + :ref => 'c374bed10f8af6000601fa407ebaef0833e1999c' mod 'ceilometer', :git => 'git://github.com/enovance/puppet-ceilometer.git', - :ref => 'bea7794633943e454fe3e99ee119298c3d0000ff' + :ref => '957c2120d0ee0b9db08bfddcce996686ba61d97d' mod 'cinder', :git => 'git://github.com/enovance/puppet-cinder.git', - :ref => '9b33d7e1a7b88109e2b85c281534450bc6e53998' + :ref => '77092bbc333e6e5fb512e7c5e88ad979435a23fd' mod 'glance', :git => 'git://github.com/enovance/puppet-glance.git', - :ref => '7f439210b1197efc55ec148074a598b1cb1e3816' + :ref => '78042d76c0854e16a55aaf05c03696d4d422e3c5' mod 'heat', :git => 'git://github.com/enovance/puppet-heat.git', - :ref => '025b8cb830d7fa476c4ab1a0b0228b88b5ba10c3' + :ref => 'a95a9435dcb5f4b24b2e53213fe05b5466b46d6a' mod 'horizon', :git => 'git://github.com/enovance/puppet-horizon.git', - :ref => '36383e90d1c4013d7989561b00ffcb08c76908de' + :ref => '16b482ea21a70d8dd06ab4c98ac5a218399b0213' mod 'keystone', :git => 'git://github.com/enovance/puppet-keystone.git', - :ref => 'cf77bb23c059416b2d00a37f96a339f06d8c1e2c' + :ref => 'e381349c1b838301dd730aa3cd146ecacc75aa7c' mod 'neutron', :git => 'git://github.com/enovance/puppet-neutron.git', - :ref => 'b2f8ab7dfc00ee7b2641f290cf9fbcf4fa547db8' + :ref => '3445712b1818160899862e8cf114604cb946813f' mod 'nova', :git => 'git://github.com/enovance/puppet-nova.git', - :ref => 'ca16cbf55cfa3d2b62c7a78431fa75aadae97af4' + :ref => 'ae171f93ed8dc60e6597ec03a7cfd7c7b70e65ed' mod 'swift', :git => 'git://github.com/enovance/puppet-swift.git', - :ref => 'f7d1385d6990492705ddaa228ffa544ca235913a' + :ref => '3ea00440361ff2452561d2cce808d938e39cce56' mod 'trove', :git => 'git://github.com/enovance/puppet-trove.git', - :ref => '6cad2a1474ece5dad813821893f994b69df29fed' + :ref => '7d9db32423b25dcc227ea6a6d43c90c63fde0d58' # Dependency mod 'apache', diff --git a/manifests/telemetry/api.pp b/manifests/telemetry/api.pp index ec38cc9f..f0716ca6 100644 --- a/manifests/telemetry/api.pp +++ b/manifests/telemetry/api.pp @@ -22,21 +22,10 @@ class cloud::telemetry::api( $ks_ceilometer_internal_port = '8777', $ks_ceilometer_password = 'ceilometerpassword', $api_eth = '127.0.0.1', - $mongo_nodes = ['127.0.0.1:27017'], ){ include 'cloud::telemetry' - $s_mongo_nodes = join($mongo_nodes, ',') - $db_conn = "mongodb://${s_mongo_nodes}/ceilometer?replicaSet=ceilometer" - - class { 'ceilometer::db': - database_connection => $db_conn, - mysql_module => '2.2', - sync_db => true, - require => Anchor['mongodb setup done'], - } - class { 'ceilometer::api': keystone_password => $ks_ceilometer_password, keystone_host => $ks_keystone_internal_host, diff --git a/manifests/telemetry/collector.pp b/manifests/telemetry/collector.pp index 3a731c8f..9890e62a 100644 --- a/manifests/telemetry/collector.pp +++ b/manifests/telemetry/collector.pp @@ -17,10 +17,19 @@ # class cloud::telemetry::collector( + $mongo_nodes = ['127.0.0.1:27017'], ){ include 'cloud::telemetry' + $s_mongo_nodes = join($mongo_nodes, ',') + $db_conn = "mongodb://${s_mongo_nodes}/ceilometer?replicaSet=ceilometer" + + class { 'ceilometer::db': + database_connection => $db_conn, + sync_db => true, + require => Anchor['mongodb setup done'], + } class { 'ceilometer::collector': } } diff --git a/manifests/telemetry/server.pp b/manifests/telemetry/server.pp index 34175d56..dc077116 100644 --- a/manifests/telemetry/server.pp +++ b/manifests/telemetry/server.pp @@ -33,11 +33,12 @@ class cloud::telemetry::server( ks_ceilometer_internal_port => $ks_ceilometer_internal_port, ks_ceilometer_password => $ks_ceilometer_password, api_eth => $api_eth, - mongo_nodes => $mongo_nodes, } class { 'cloud::telemetry::alarmevaluator': } class { 'cloud::telemetry::alarmnotifier': } - class { 'cloud::telemetry::collector': } + class { 'cloud::telemetry::collector': + mongo_nodes => $mongo_nodes, + } class { 'cloud::telemetry::notification': } } diff --git a/spec/classes/cloud_telemetry_api_spec.rb b/spec/classes/cloud_telemetry_api_spec.rb index ad32ccaf..5eaafd38 100644 --- a/spec/classes/cloud_telemetry_api_spec.rb +++ b/spec/classes/cloud_telemetry_api_spec.rb @@ -43,8 +43,7 @@ describe 'cloud::telemetry::api' do :ks_keystone_internal_proto => 'http', :ks_ceilometer_internal_port => '8777', :ks_ceilometer_password => 'rabbitpassword', - :api_eth => '127.0.0.1', - :mongo_nodes => ['node1', 'node2', 'node3'] } + :api_eth => '127.0.0.1' } end it 'configure ceilometer common' do @@ -82,13 +81,6 @@ describe 'cloud::telemetry::api' do :hour => '0' ) end - - it 'synchronize ceilometer db indexes' do - should contain_class('ceilometer::db').with( - :sync_db => true, - :database_connection => 'mongodb://node1,node2,node3/ceilometer?replicaSet=ceilometer' - ) - end end context 'on Debian platforms' do diff --git a/spec/classes/cloud_telemetry_collector_spec.rb b/spec/classes/cloud_telemetry_collector_spec.rb index f69137ff..afe495be 100644 --- a/spec/classes/cloud_telemetry_collector_spec.rb +++ b/spec/classes/cloud_telemetry_collector_spec.rb @@ -38,6 +38,10 @@ describe 'cloud::telemetry::collector' do debug => true }" end + let :params do + { :mongo_nodes => ['node1', 'node2', 'node3'] } + end + it 'configure ceilometer common' do should contain_class('ceilometer').with( :verbose => true, @@ -61,6 +65,12 @@ describe 'cloud::telemetry::collector' do should contain_class('ceilometer::collector') end + it 'synchronize ceilometer db indexes' do + should contain_class('ceilometer::db').with( + :sync_db => true, + :database_connection => 'mongodb://node1,node2,node3/ceilometer?replicaSet=ceilometer' + ) + end end context 'on Debian platforms' do