]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
Only add ceilometer user to nova group if using compute agent
authorDavid Moreau Simard <dmsimard@iweb.com>
Tue, 7 Jan 2014 21:41:14 +0000 (16:41 -0500)
committerFrançois Charlier <francois.charlier@enovance.com>
Tue, 14 Jan 2014 16:34:11 +0000 (17:34 +0100)
When using ceilometer outside of the compute context (ex: with the
swift middleware), puppet-ceilometer attempts to add the user to
the nova group which does not (and probably should not) exist on
the swift nodes.

Change-Id: I6cc68152325a967c024ce611f92a90ce0afba8cc
(cherry picked from commit d064997cd4c50d9b5365fe2ffca60e14a86b08e1)

manifests/agent/compute.pp
manifests/init.pp
spec/classes/ceilometer_agent_compute_spec.rb
spec/classes/ceilometer_init_spec.rb

index 0789c5d17c35b4414129805b80e3c5c3d27a2220..acb60eaee12242490266ca5e7f80f856183896e4 100644 (file)
@@ -22,7 +22,11 @@ class ceilometer::agent::compute (
 
   if $::ceilometer::params::libvirt_group {
     User['ceilometer'] {
-      groups +> [$::ceilometer::params::libvirt_group]
+      groups => ['nova', $::ceilometer::params::libvirt_group]
+    }
+  } else {
+    User['ceilometer'] {
+      groups => ['nova']
     }
   }
 
index 97a75b182cfd567fdbdf12ee2038625bc202ff9f..e1c7899f7b8ba47ea0c7bf53abc01a964ba579d3 100644 (file)
@@ -89,7 +89,6 @@ class ceilometer(
   user { 'ceilometer':
     name    => 'ceilometer',
     gid     => 'ceilometer',
-    groups  => ['nova'],
     system  => true,
     require => Package['ceilometer-common'],
   }
index af7a6981fbc7b265105c661e53c10c71ca29c321..04c024aeb423f83e74cf3b6065a18c1072cba3e5 100644 (file)
@@ -24,9 +24,11 @@ describe 'ceilometer::agent::compute' do
       )
     end
 
-    it 'adds ceilometer user to libvirt group if required' do
+    it 'adds ceilometer user to nova group and, if required, to libvirt group' do
       if platform_params[:libvirt_group]
-        should contain_user('ceilometer').with_groups(/#{platform_params[:libvirt_group]}/)
+        should contain_user('ceilometer').with_groups(['nova', "#{platform_params[:libvirt_group]}"])
+      else
+        should contain_user('ceilometer').with_groups('nova')
       end
     end
 
index 6c5f75934bb834b4cb6b596a71241f0748bd8fd0..960e80fafd8ba0505eec836693c6108f9b5abd2f 100644 (file)
@@ -76,7 +76,6 @@ describe 'ceilometer' do
       should contain_user('ceilometer').with(
         :name    => 'ceilometer',
         :gid     => 'ceilometer',
-        :groups  => ['nova'],
         :system  => true,
         :require => 'Package[ceilometer-common]'
       )