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
This commit is contained in:
Yanis Guenane 2015-07-22 14:53:29 +02:00
parent 9b60f6661f
commit a5353006ef
10 changed files with 31 additions and 19 deletions

View File

@ -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 {

View File

@ -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

View File

@ -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 {

View File

@ -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 {

View File

@ -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<||>

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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