]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
Add tag to package and service resources
authorYanis Guenane <yguenane@redhat.com>
Wed, 22 Jul 2015 12:53:29 +0000 (14:53 +0200)
committerYanis Guenane <yguenane@redhat.com>
Wed, 22 Jul 2015 19:00:51 +0000 (21:00 +0200)
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

manifests/agent/central.pp
manifests/agent/compute.pp
manifests/agent/polling.pp
manifests/api.pp
manifests/init.pp
spec/classes/ceilometer_agent_central_spec.rb
spec/classes/ceilometer_agent_compute_spec.rb
spec/classes/ceilometer_agent_polling_spec.rb
spec/classes/ceilometer_api_spec.rb
spec/classes/ceilometer_init_spec.rb

index 5fa5b097d7eb0c31cdbdbc004cf8246ecc5bbaab..c1ba338b23820d7a94632686e37245f9cb30e3c4 100644 (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 {
index ec678b8ed06edad8e97c1261bd06f54c80dbe9ad..a40a707da62b14aa4b97eb5137fee76d19d01e7b 100644 (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
index 0987420ac5207f0895bec9f61be34f54d21b23c2..4e9acb76a9eb3b42230fa1fbbba078371927604e 100644 (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 {
index 66d71d38b871a07e898d562e8daf1613655116d2..b6ea6728ad006c954939e4325f90728e72551cc5 100644 (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 {
index de8b7405c0135009516a5273aeea92ba71f16a0a..66c3eb20b41e78415e915fb6d0d01db804c50a15 100644 (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<||>
index 05cb35f21238c9ad9e5e000d49e04d969874b227..b8911d4a8754f95b4232995d047e592531029191 100644 (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
index 6b6a42e05978636d8aeeea6ac82f5fc56d70b93d..e012c982e03a7e5c04b0c89371e8e28424972d4a 100644 (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
index d97159408c4f0a5baa0b6e47cb656e2914ca02b4..b35ec0fcac65b5e75eb23a8fb0eeb91944aa4560 100644 (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
index e54eea1a9dac04b2782bc957ba250fb019f552b4..e0d0b3687ce52643c7fb206b9ba6aaaee1a18fc7 100644 (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
index 6ca5120d17e86f48e54a957fa39aa095518f3997..9b15129398218bd424d1e93c831bfacb89732bc4 100644 (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