From: Yanis Guenane Date: Wed, 22 Jul 2015 12:53:29 +0000 (+0200) Subject: Add tag to package and service resources X-Git-Tag: 7.0.0-mos-rc1~14^2 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=a5353006efee3b3af38b161c9e9c5f79ce93f4b0;p=puppet-modules%2Fpuppet-ceilometer.git Add tag to package and service resources In order to be able to take an action after all the packages of the module have been installed/updated or all the services have been started/restarted, we set a 'ceilometer-package' and 'ceilometer-service' tag for each package and service of this module. At the moment, there is a generic openstack tag that is not specific enough if one wants to take action upon a single module change. Use case : If an action needs to be taken after all the packages have been installed or updated : Package <| tag == 'ceilometer-package' |> -> X Change-Id: I5e96d99e4ee10bbac73678c85eb1e8db390774b8 --- diff --git a/manifests/agent/central.pp b/manifests/agent/central.pp index 5fa5b09..c1ba338 100644 --- a/manifests/agent/central.pp +++ b/manifests/agent/central.pp @@ -33,7 +33,7 @@ class ceilometer::agent::central ( package { 'ceilometer-agent-central': ensure => $package_ensure, name => $::ceilometer::params::agent_central_package_name, - tag => 'openstack', + tag => ['openstack', 'ceilometer-package'], } if $manage_service { @@ -51,6 +51,7 @@ class ceilometer::agent::central ( enable => $enabled, hasstatus => true, hasrestart => true, + tag => 'ceilometer-service', } if $coordination_url { diff --git a/manifests/agent/compute.pp b/manifests/agent/compute.pp index ec678b8..a40a707 100644 --- a/manifests/agent/compute.pp +++ b/manifests/agent/compute.pp @@ -30,7 +30,7 @@ class ceilometer::agent::compute ( package { 'ceilometer-agent-compute': ensure => $package_ensure, name => $::ceilometer::params::agent_compute_package_name, - tag => 'openstack', + tag => ['openstack', 'ceilometer-package'], } if $::ceilometer::params::libvirt_group { @@ -58,6 +58,7 @@ class ceilometer::agent::compute ( enable => $enabled, hasstatus => true, hasrestart => true, + tag => 'ceilometer-service', } #NOTE(dprince): This is using a custom (inline) file_line provider diff --git a/manifests/agent/polling.pp b/manifests/agent/polling.pp index 0987420..4e9acb7 100644 --- a/manifests/agent/polling.pp +++ b/manifests/agent/polling.pp @@ -104,7 +104,7 @@ class ceilometer::agent::polling ( package { 'ceilometer-polling': ensure => $package_ensure, name => $::ceilometer::params::agent_polling_package_name, - tag => 'openstack', + tag => ['openstack', 'ceilometer-package'], } if $namespaces_real { @@ -123,6 +123,7 @@ class ceilometer::agent::polling ( enable => $enabled, hasstatus => true, hasrestart => true, + tag => 'ceilometer-service', } if $coordination_url { diff --git a/manifests/api.pp b/manifests/api.pp index 66d71d3..b6ea672 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -96,7 +96,7 @@ class ceilometer::api ( package { 'ceilometer-api': ensure => $package_ensure, name => $::ceilometer::params::api_package_name, - tag => 'openstack', + tag => ['openstack', 'ceilometer-package'], } if $manage_service { @@ -115,7 +115,8 @@ class ceilometer::api ( hasstatus => true, hasrestart => true, require => Class['ceilometer::db'], - subscribe => Exec['ceilometer-dbsync'] + subscribe => Exec['ceilometer-dbsync'], + tag => 'ceilometer-service', } ceilometer_config { diff --git a/manifests/init.pp b/manifests/init.pp index de8b740..66c3eb2 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -177,7 +177,7 @@ class ceilometer( package { 'ceilometer-common': ensure => $package_ensure, name => $::ceilometer::params::common_package_name, - tag => 'openstack', + tag => ['openstack', 'ceilometer-package'], } Package['ceilometer-common'] -> Ceilometer_config<||> diff --git a/spec/classes/ceilometer_agent_central_spec.rb b/spec/classes/ceilometer_agent_central_spec.rb index 05cb35f..b8911d4 100644 --- a/spec/classes/ceilometer_agent_central_spec.rb +++ b/spec/classes/ceilometer_agent_central_spec.rb @@ -23,7 +23,7 @@ describe 'ceilometer::agent::central' do :ensure => 'latest', :name => platform_params[:agent_package_name], :before => ['Service[ceilometer-agent-central]'], - :tag => 'openstack' + :tag => ['openstack', 'ceilometer-package'], ) end @@ -45,7 +45,8 @@ describe 'ceilometer::agent::central' do :name => platform_params[:agent_service_name], :enable => params[:enabled], :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end @@ -68,7 +69,8 @@ describe 'ceilometer::agent::central' do :name => platform_params[:agent_service_name], :enable => false, :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end diff --git a/spec/classes/ceilometer_agent_compute_spec.rb b/spec/classes/ceilometer_agent_compute_spec.rb index 6b6a42e..e012c98 100644 --- a/spec/classes/ceilometer_agent_compute_spec.rb +++ b/spec/classes/ceilometer_agent_compute_spec.rb @@ -23,7 +23,7 @@ describe 'ceilometer::agent::compute' do :ensure => 'installed', :name => platform_params[:agent_package_name], :before => ['Service[ceilometer-agent-compute]'], - :tag => 'openstack' + :tag => ['openstack', 'ceilometer-package'], ) end @@ -73,7 +73,8 @@ describe 'ceilometer::agent::compute' do :name => platform_params[:agent_service_name], :enable => params[:enabled], :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end @@ -92,7 +93,8 @@ describe 'ceilometer::agent::compute' do :name => platform_params[:agent_service_name], :enable => false, :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end diff --git a/spec/classes/ceilometer_agent_polling_spec.rb b/spec/classes/ceilometer_agent_polling_spec.rb index d971594..b35ec0f 100644 --- a/spec/classes/ceilometer_agent_polling_spec.rb +++ b/spec/classes/ceilometer_agent_polling_spec.rb @@ -57,7 +57,7 @@ describe 'ceilometer::agent::polling' do :ensure => 'latest', :name => platform_params[:agent_package_name], :before => ['Service[ceilometer-polling]'], - :tag => 'openstack' + :tag => ['openstack', 'ceilometer-package'], ) end @@ -83,7 +83,8 @@ describe 'ceilometer::agent::polling' do :name => platform_params[:agent_service_name], :enable => params[:enabled], :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end @@ -102,7 +103,8 @@ describe 'ceilometer::agent::polling' do :name => platform_params[:agent_service_name], :enable => false, :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end diff --git a/spec/classes/ceilometer_api_spec.rb b/spec/classes/ceilometer_api_spec.rb index e54eea1..e0d0b36 100644 --- a/spec/classes/ceilometer_api_spec.rb +++ b/spec/classes/ceilometer_api_spec.rb @@ -35,7 +35,7 @@ describe 'ceilometer::api' do is_expected.to contain_package('ceilometer-api').with( :ensure => 'latest', :name => platform_params[:api_package_name], - :tag => 'openstack', + :tag => ['openstack', 'ceilometer-package'], ) end @@ -90,7 +90,8 @@ describe 'ceilometer::api' do :hasstatus => true, :hasrestart => true, :require => 'Class[Ceilometer::Db]', - :subscribe => 'Exec[ceilometer-dbsync]' + :subscribe => 'Exec[ceilometer-dbsync]', + :tag => 'ceilometer-service', ) end end @@ -109,7 +110,8 @@ describe 'ceilometer::api' do :name => platform_params[:api_service_name], :enable => false, :hasstatus => true, - :hasrestart => true + :hasrestart => true, + :tag => 'ceilometer-service', ) end end diff --git a/spec/classes/ceilometer_init_spec.rb b/spec/classes/ceilometer_init_spec.rb index 6ca5120..9b15129 100644 --- a/spec/classes/ceilometer_init_spec.rb +++ b/spec/classes/ceilometer_init_spec.rb @@ -114,7 +114,7 @@ describe 'ceilometer' do is_expected.to contain_package('ceilometer-common').with( :ensure => 'present', :name => platform_params[:common_package_name], - :tag => 'openstack' + :tag => ['openstack', 'ceilometer-package'], ) end