]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
Add package_ensure where missing
authorXav Paice <xav@catalyst.net.nz>
Tue, 2 Sep 2014 08:59:29 +0000 (20:59 +1200)
committerXav Paice <xav@catalyst.net.nz>
Thu, 23 Oct 2014 22:07:37 +0000 (11:07 +1300)
This adds package_ensure parameter to:
* ceilometer::agent::central
* ceilometer::agent::compute
* ceilometer::agent::notification
* ceilometer::api
* ceilometer::collector

Change-Id: I3a982882c37a24737d71f9af93d7aa0d7200bdf4

manifests/agent/central.pp
manifests/agent/compute.pp
manifests/agent/notification.pp
manifests/api.pp
manifests/collector.pp
spec/classes/ceilometer_agent_central_spec.rb
spec/classes/ceilometer_agent_compute_spec.rb
spec/classes/ceilometer_agent_notification_spec.rb
spec/classes/ceilometer_api_spec.rb
spec/classes/ceilometer_collector_spec.rb

index 7c17d8c114721822f526022b2a57af122966e6cf..c42d9060b9448653f3ac25b1663846853df9d20e 100644 (file)
@@ -9,9 +9,15 @@
 #    (optional)  Whether the service should be managed by Puppet.
 #    Defaults to true.
 #
+#  [*package_ensure*]
+#    (optional) ensure state for package.
+#    Defaults to 'present'
+#
+
 class ceilometer::agent::central (
-  $manage_service = true,
-  $enabled        = true,
+  $manage_service   = true,
+  $enabled          = true,
+  $package_ensure   = 'present',
 ) {
 
   include ceilometer::params
@@ -20,7 +26,7 @@ class ceilometer::agent::central (
 
   Package['ceilometer-agent-central'] -> Service['ceilometer-agent-central']
   package { 'ceilometer-agent-central':
-    ensure => installed,
+    ensure => $package_ensure,
     name   => $::ceilometer::params::agent_central_package_name,
   }
 
index 31048360b9d2bb57b300e7cabf420ac4f838f119..d9d922f98b5007491639724549fdcb326ff71684 100644 (file)
@@ -1,4 +1,4 @@
-# The ceilometer::agent::compute class installs the ceilometer compute agent
+#The ceilometer::agent::compute class installs the ceilometer compute agent
 # Include this class on all nova compute nodes
 #
 # == Parameters
 #    (optional)  Whether the service should be managed by Puppet.
 #    Defaults to true.
 #
+# [*package_ensure*]
+#   (optional) ensure state for package.
+#   Defaults to 'present'
+#
 class ceilometer::agent::compute (
-  $manage_service = true,
-  $enabled        = true,
+  $manage_service   = true,
+  $enabled          = true,
+  $package_ensure   = 'present',
 ) inherits ceilometer {
 
   include ceilometer::params
@@ -21,7 +26,7 @@ class ceilometer::agent::compute (
 
   Package['ceilometer-agent-compute'] -> Service['ceilometer-agent-compute']
   package { 'ceilometer-agent-compute':
-    ensure => installed,
+    ensure => $package_ensure,
     name   => $::ceilometer::params::agent_compute_package_name,
   }
 
index f8c2631c8e166be485d1454dd8055e25495a776c..9a6922440eca2e734a48bf540ea6a26481701d83 100644 (file)
 #   (optional) Save event details.
 #   Defaults to false
 #
+#  [*package_ensure*]
+#    (optional) ensure state for package.
+#    Defaults to 'present'
+#
 
 class ceilometer::agent::notification (
   $manage_service     = true,
   $enabled            = true,
   $ack_on_event_error = true,
-  $store_events       = false
+  $store_events       = false,
+  $package_ensure     = 'present',
 ) {
 
   include ceilometer::params
 
   Ceilometer_config<||> ~> Service['ceilometer-agent-notification']
 
-  Package[$::ceilometer::params::agent_notification_package_name] -> Service['ceilometer-agent-notification']
-  ensure_packages([$::ceilometer::params::agent_notification_package_name])
+  Package[$::ceilometer::params::agent_notification_package_name] ->
+  Service['ceilometer-agent-notification']
+
+  ensure_resource('package', [$::ceilometer::params::agent_notification_package_name],
+    { ensure => $package_ensure }
+  )
 
   if $manage_service {
     if $enabled {
index 70e2bdf4a6ff2a0cd0cdb071b017261f3448b7bc..0b8333806d39df77d6b71f8567149bc98b7a42c1 100644 (file)
 #    (optional) The ceilometer api port.
 #    Defaults to 8777
 #
+#  [*package_ensure*]
+#    (optional) ensure state for package.
+#    Defaults to 'present'
+#
 
 class ceilometer::api (
   $manage_service             = true,
   $enabled                    = true,
+  $package_ensure             = 'present',
   $keystone_host              = '127.0.0.1',
   $keystone_port              = '35357',
   $keystone_auth_admin_prefix = false,
@@ -72,7 +77,7 @@ class ceilometer::api (
   Package['ceilometer-api'] -> Ceilometer_config<||>
   Package['ceilometer-api'] -> Service['ceilometer-api']
   package { 'ceilometer-api':
-    ensure => installed,
+    ensure => $package_ensure,
     name   => $::ceilometer::params::api_package_name,
   }
 
index 8e1f6fcb20fd0116fef9422dfe2eef16d6a6d339..440538c563efe7ffa7104fea22d4caeb8338bddc 100644 (file)
@@ -9,9 +9,14 @@
 #    (optional)  Whether the service should be managed by Puppet.
 #    Defaults to true.
 #
+#  [*package_ensure*]
+#    (optional) ensure state for package.
+#    Defaults to 'present'
+#
 class ceilometer::collector (
   $manage_service = true,
   $enabled        = true,
+  $package_ensure = 'present',
 ) {
 
   include ceilometer::params
@@ -19,7 +24,9 @@ class ceilometer::collector (
   Ceilometer_config<||> ~> Service['ceilometer-collector']
 
   Package[$::ceilometer::params::collector_package_name] -> Service['ceilometer-collector']
-  ensure_packages([$::ceilometer::params::collector_package_name])
+  ensure_resource( 'package', [$::ceilometer::params::collector_package_name],
+    { ensure => $package_ensure }
+  )
 
   if $manage_service {
     if $enabled {
index 8a45c35e1b6091d92d31eccdea8af269e43f2315..0e20c0bd55d6fa38c3ff851fe0d9a12bd3c63b39 100644 (file)
@@ -8,7 +8,8 @@ describe 'ceilometer::agent::central' do
 
   let :params do
     { :enabled        => true,
-      :manage_service => true }
+      :manage_service => true,
+      :package_ensure => 'latest' }
   end
 
   shared_examples_for 'ceilometer-agent-central' do
@@ -17,7 +18,7 @@ describe 'ceilometer::agent::central' do
 
     it 'installs ceilometer-agent-central package' do
       should contain_package('ceilometer-agent-central').with(
-        :ensure => 'installed',
+        :ensure => 'latest',
         :name   => platform_params[:agent_package_name],
         :before => 'Service[ceilometer-agent-central]'
       )
index e68d91e901ad1dda8a91c717dd98fe475d9aaa42..c0dd64ed3fbbf75ddccbbe1303979c5f28878289 100644 (file)
@@ -9,8 +9,9 @@ describe 'ceilometer::agent::compute' do
   end
 
   let :params do
-    { :enabled  => true,
-      :manage_service => true }
+    { :enabled        => true,
+      :manage_service => true,
+      :package_ensure => 'installed' }
   end
 
   shared_examples_for 'ceilometer-agent-compute' do
index 8646c28e35d061674b8b26a4d2899861e6149038..62ca2889dd55fa92588217891051a53c0fb3f9a8 100644 (file)
@@ -38,7 +38,9 @@ describe 'ceilometer::agent::notification' do
     it { should contain_class('ceilometer::params') }
 
     it 'installs ceilometer agent notification package' do
-      should contain_package(platform_params[:agent_notification_package_name])
+      should contain_package(platform_params[:agent_notification_package_name]).with(
+        :ensure => 'present'
+      )
     end
 
     it 'configures notifications parameters in ceilometer.conf' do
index 66a9c1815f248a0ce3218cb3f528b9dc93bca168..eeefd0161f78bebe93854b7401008f449e4ac288 100644 (file)
@@ -16,7 +16,8 @@ describe 'ceilometer::api' do
       :keystone_password => 'ceilometer-passw0rd',
       :keystone_tenant   => 'services',
       :host              => '0.0.0.0',
-      :port              => '8777'
+      :port              => '8777',
+      :package_ensure    => 'latest',
     }
   end
 
@@ -31,7 +32,7 @@ describe 'ceilometer::api' do
 
     it 'installs ceilometer-api package' do
       should contain_package('ceilometer-api').with(
-        :ensure => 'installed',
+        :ensure => 'latest',
         :name   => platform_params[:api_package_name]
       )
     end
index 72f2510e5080396055f1acbe0c85affb60db5b76..72b5668f2e1e9aa6e4fb521f2dea73d6e5552cc6 100644 (file)
@@ -16,7 +16,9 @@ describe 'ceilometer::collector' do
       it { should contain_class('ceilometer::params') }
 
       it 'installs ceilometer-collector package' do
-        should contain_package(platform_params[:collector_package_name])
+        should contain_package(platform_params[:collector_package_name]).with(
+          :ensure => 'present'
+        )
       end
 
       it 'configures ceilometer-collector service' do