diff --git a/manifests/agent/central.pp b/manifests/agent/central.pp index d93b8d99..477e42c6 100644 --- a/manifests/agent/central.pp +++ b/manifests/agent/central.pp @@ -11,10 +11,12 @@ class ceilometer::agent::central ( include ceilometer::params - Package<| title == 'ceilometer-common' |> -> Class['ceilometer::agent::central'] + Ceilometer_config<||> ~> Service['ceilometer-agent-central'] + Package['ceilometer-agent-central'] -> Service['ceilometer-agent-central'] package { 'ceilometer-agent-central': - ensure => installed + ensure => installed, + name => $::ceilometer::params::agent_central_package_name, } if $enabled { @@ -23,17 +25,15 @@ class ceilometer::agent::central ( $service_ensure = 'stopped' } + Package['ceilometer-common'] -> Service['ceilometer-agent-central'] service { 'ceilometer-agent-central': ensure => $service_ensure, - name => $::ceilometer::params::agent_central_name, + name => $::ceilometer::params::agent_central_service_name, enable => $enabled, hasstatus => true, hasrestart => true, - require => Package['ceilometer-agent-central'] } - Ceilometer_config<||> ~> Service['ceilometer-agent-central'] - ceilometer_config { 'DEFAULT/os_auth_url' : value => $auth_url; 'DEFAULT/os_auth_region' : value => $auth_region; diff --git a/manifests/agent/compute.pp b/manifests/agent/compute.pp index 78a1adef..b614492b 100644 --- a/manifests/agent/compute.pp +++ b/manifests/agent/compute.pp @@ -11,10 +11,12 @@ class ceilometer::agent::compute ( include ceilometer::params - Package<| title == 'ceilometer-common' |> -> Class['ceilometer::agent::compute'] + Ceilometer_config<||> ~> Service['ceilometer-agent-compute'] + Package['ceilometer-agent-compute'] -> Service['ceilometer-agent-compute'] package { 'ceilometer-agent-compute': - ensure => installed + ensure => installed, + name => $::ceilometer::params::agent_compute_package_name, } User['ceilometer'] { @@ -27,17 +29,15 @@ class ceilometer::agent::compute ( $service_ensure = 'stopped' } + Package['ceilometer-common'] -> Service['ceilometer-agent-central'] service { 'ceilometer-agent-compute': ensure => $service_ensure, name => $::ceilometer::params::agent_compute_service_name, enable => $enabled, hasstatus => true, hasrestart => true, - require => Package['ceilometer-agent-compute'] } - Ceilometer_config<||> ~> Service['ceilometer-agent-compute'] - ceilometer_config { 'DEFAULT/os_auth_url' : value => $auth_url; 'DEFAULT/os_auth_region' : value => $auth_region; diff --git a/manifests/api.pp b/manifests/api.pp index f9f42558..5136d188 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -11,10 +11,12 @@ class ceilometer::api ( include ceilometer::params - Package<| title == 'ceilometer-common' |> -> Class['ceilometer::api'] - validate_string($keystone_password) + Ceilometer_config<||> ~> Service['ceilometer-api'] + + Package['ceilometer-api'] -> Ceilometer_config<||> + Package['ceilometer-api'] -> Service['ceilometer-api'] package { 'ceilometer-api': ensure => installed, name => $::ceilometer::params::api_package_name, @@ -26,18 +28,17 @@ class ceilometer::api ( $service_ensure = 'stopped' } + Package['ceilometer-common'] -> Service['ceilometer-api'] service { 'ceilometer-api': ensure => $service_ensure, name => $::ceilometer::params::api_service_name, enable => $enabled, hasstatus => true, hasrestart => true, - require => [Package['ceilometer-api'], Class['ceilometer::db']], + require => Class['ceilometer::db'], subscribe => Exec['ceilometer-dbsync'] } - Ceilometer_config<||> ~> Service['ceilometer-api'] - ceilometer_config { 'keystone_authtoken/auth_host' : value => $keystone_host; 'keystone_authtoken/auth_port' : value => $keystone_port; diff --git a/manifests/collector.pp b/manifests/collector.pp index 60193d4d..b94bed10 100644 --- a/manifests/collector.pp +++ b/manifests/collector.pp @@ -5,8 +5,9 @@ class ceilometer::collector ( include ceilometer::params - Package<| title == 'ceilometer-common' |> -> Class['ceilometer::collector'] + Ceilometer_config<||> ~> Service['ceilometer-collector'] + Package['ceilometer-collector'] -> Service['ceilometer-collector'] package { 'ceilometer-collector': ensure => installed, name => $::ceilometer::params::collector_package_name, @@ -18,15 +19,14 @@ class ceilometer::collector ( $service_ensure = 'stopped' } + Package['ceilometer-common'] -> Service['ceilometer-collector'] service { 'ceilometer-collector': ensure => $service_ensure, name => $::ceilometer::params::collector_service_name, enable => $enabled, hasstatus => true, hasrestart => true, - require => [Package['ceilometer-collector'], Class['ceilometer::db']], + require => Class['ceilometer::db'], subscribe => Exec['ceilometer-dbsync'] } - - Ceilometer_config<||> ~> Service['ceilometer-collector'] } diff --git a/spec/classes/ceilometer_api_spec.rb b/spec/classes/ceilometer_api_spec.rb index 9cee3277..c50a3afe 100644 --- a/spec/classes/ceilometer_api_spec.rb +++ b/spec/classes/ceilometer_api_spec.rb @@ -35,7 +35,7 @@ describe 'ceilometer::api' do :enable => true, :hasstatus => true, :hasrestart => true, - :require => ['Package[ceilometer-api]', 'Class[Ceilometer::Db]'], + :require => 'Class[Ceilometer::Db]', :subscribe => 'Exec[ceilometer-dbsync]' ) end diff --git a/spec/classes/ceilometer_collector_spec.rb b/spec/classes/ceilometer_collector_spec.rb index f6c91259..421b36de 100644 --- a/spec/classes/ceilometer_collector_spec.rb +++ b/spec/classes/ceilometer_collector_spec.rb @@ -2,6 +2,10 @@ require 'spec_helper' describe 'ceilometer::collector' do + let :pre_condition do + "class { 'ceilometer': metering_secret => 's3cr3t' }" + end + shared_examples_for 'ceilometer-collector' do it { should include_class('ceilometer::params') } @@ -20,7 +24,7 @@ describe 'ceilometer::collector' do :enable => true, :hasstatus => true, :hasrestart => true, - :require => ['Package[ceilometer-collector]', 'Class[Ceilometer::Db]'], + :require => 'Class[Ceilometer::Db]', :subscribe => 'Exec[ceilometer-dbsync]' ) end