]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
metering_secret was renamed to telemetry_secret
authorMatt Fischer <matt@mattfischer.com>
Fri, 13 May 2016 02:32:16 +0000 (20:32 -0600)
committerEmilien Macchi <emilien@redhat.com>
Sun, 15 May 2016 09:31:58 +0000 (11:31 +0200)
Annoyingly upstream renamed this variable which is used in about two
dozen places. In addition to this we'll need to fix the integration
tests once this lands.

Change-Id: I8c01fac2c984f39e63b116c4a6433b2009a4943c

17 files changed:
README.md
examples/ceilometer_with_gnocchi.pp
examples/site.pp
manifests/init.pp
releasenotes/notes/metering_secret_renamed_to_telemetry_secret-f056f07ae9f1b23e.yaml [new file with mode: 0644]
spec/acceptance/ceilometer_wsgi_apache_spec.rb
spec/classes/ceilometer_agent_auth_spec.rb
spec/classes/ceilometer_agent_central_spec.rb
spec/classes/ceilometer_agent_compute_spec.rb
spec/classes/ceilometer_agent_notification_spec.rb
spec/classes/ceilometer_agent_polling_spec.rb
spec/classes/ceilometer_api_spec.rb
spec/classes/ceilometer_collector_spec.rb
spec/classes/ceilometer_dispatcher_gnocchi_spec.rb
spec/classes/ceilometer_expirer_spec.rb
spec/classes/ceilometer_init_spec.rb
spec/classes/ceilometer_wsgi_apache_spec.rb

index 504eb23be0c3562c42cd5c51bb492310f0f65859..50d925bc354bdb59fa299a958ad2611006bed5c9 100644 (file)
--- a/README.md
+++ b/README.md
@@ -45,7 +45,7 @@ To utilize the ceilometer module's functionality you will need to declare multip
 
 ```puppet
 class { '::ceilometer':
-  metering_secret     => 'secrete',
+  telemetry_secret    => 'secrete',
   rabbit_userid       => 'ceilometer',
   rabbit_password     => 'an_even_bigger_secret',
   rabbit_host         => '127.0.0.1',
index bf47a61702818df919b87a440be74ead2808b798..708595ba8448c02529a4abc2904aea227b554873 100644 (file)
@@ -1,8 +1,8 @@
 class { '::ceilometer':
-  metering_secret => 'secrete',
-  rabbit_userid   => 'ceilometer',
-  rabbit_password => 'an_even_bigger_secret',
-  rabbit_host     => '127.0.0.1',
+  telemetry_secret => 'secrete',
+  rabbit_userid    => 'ceilometer',
+  rabbit_password  => 'an_even_bigger_secret',
+  rabbit_host      => '127.0.0.1',
 }
 class { '::ceilometer::db::mysql':
   password => 'a_big_secret',
index 3d3616e77ada84606dfd9207ea6b83cf318c61f9..817be03cb0cc3929802451456a6931922007ef00 100644 (file)
@@ -12,9 +12,9 @@ node default {
 
   # Add the base ceilometer class & parameters
   # This class is required by ceilometer agents & api classes
-  # The metering_secret parameter is mandatory
+  # The telemetry_secret parameter is mandatory
   class { '::ceilometer':
-    metering_secret => 'darksecret'
+    telemetry_secret => 'darksecret'
   }
 
   # Configure the ceilometer database
index b1900362ff76a29572187da7dc3113cdfc9ae03a..e06c397c4d0d02b2271d08bc1e6e4c619f119bf0 100644 (file)
@@ -19,7 +19,7 @@
 #    (<= 0 means forever)
 #    Defaults to -1.
 #
-#  [*metering_secret*]
+#  [*telemetry_secret*]
 #   (Required)  Secret key for signing messages.
 #
 #  [*notification_topics*]
 #   (string value)
 #   Defaults to $::os_service_default
 #
-#  [*memcached_servers*]
-#    (Optional) A list of memcached server(s) to use for caching. (list value)
-#    Defaults to $::os_service_default
+# [*memcached_servers*]
+#   (Optional) A list of memcached server(s) to use for caching. (list value)
+#   Defaults to $::os_service_default
 #
 # === DEPRECATED PARAMETERS:
+#  [*metering_secret*]
+#   (optional)  Secret key for signing messages.
+#   This option has been renamed to telemetry_secret in Mitaka.
+#   Don't define this if using telemetry_secret.
 #
 # [*alarm_history_time_to_live*]
 #
@@ -152,7 +156,7 @@ class ceilometer(
   $http_timeout                       = '600',
   $event_time_to_live                 = '-1',
   $metering_time_to_live              = '-1',
-  $metering_secret                    = false,
+  $telemetry_secret                   = false,
   $notification_topics                = ['notifications'],
   $package_ensure                     = 'present',
   $debug                              = undef,
@@ -182,13 +186,26 @@ class ceilometer(
   $memcached_servers                  = $::os_service_default,
   # DEPRECATED PARAMETERS
   $alarm_history_time_to_live         = undef,
+  $metering_secret                    = undef,
 ) {
 
-  validate_string($metering_secret)
-
   include ::ceilometer::logging
   include ::ceilometer::params
 
+  # Cleanup in Ocata.
+  if $telemetry_secret {
+    validate_string($telemetry_secret)
+    if $metering_secret {
+      warning('Both $metering_secret and $telemetry_secret defined, using $telemetry_secret')
+    }
+    $telemetry_secret_real = $telemetry_secret
+  }
+  else {
+    warning('metering_secret has been renamed to telemetry_secret. metering_secret will continue to work until Ocata.')
+    validate_string($metering_secret)
+    $telemetry_secret_real = $metering_secret
+  }
+
   if $alarm_history_time_to_live {
     warning('alarm_history_time_to_live parameter is deprecated. It should be configured for Aodh.')
   }
@@ -239,7 +256,7 @@ class ceilometer(
   # Once we got here, we can act as an honey badger on the rpc used.
   ceilometer_config {
     'DEFAULT/http_timeout'                : value => $http_timeout;
-    'publisher/metering_secret'           : value => $metering_secret, secret => true;
+    'publisher/telemetry_secret'          : value => $telemetry_secret_real, secret => true;
     'database/event_time_to_live'         : value => $event_time_to_live;
     'database/metering_time_to_live'      : value => $metering_time_to_live;
   }
diff --git a/releasenotes/notes/metering_secret_renamed_to_telemetry_secret-f056f07ae9f1b23e.yaml b/releasenotes/notes/metering_secret_renamed_to_telemetry_secret-f056f07ae9f1b23e.yaml
new file mode 100644 (file)
index 0000000..f30885e
--- /dev/null
@@ -0,0 +1,5 @@
+---
+deprecations:
+  - The variable $metering_secret has been renamed as
+    $telemetry_secret to match the name of the config
+    option. The old variable will be removed in Ocata.
index 546229ed698d02fa9d9c70987d98ce09014a3744..aa771a5457465f18cab94db0d16fe2f2dbebb060 100644 (file)
@@ -29,7 +29,7 @@ describe 'ceilometer with mysql' do
 
       # Ceilometer resources
       class { '::ceilometer':
-        metering_secret     => 'secrete',
+        telemetry_secret    => 'secrete',
         rabbit_userid       => 'ceilometer',
         rabbit_password     => 'an_even_bigger_secret',
         rabbit_host         => '127.0.0.1',
index 74203bb1043a4844e28a72b424cf2b3cc28ca4ae..3e11c7637b02c9a29131d07ccf5904942b37ff04 100644 (file)
@@ -3,7 +3,7 @@ require 'spec_helper'
 describe 'ceilometer::agent::auth' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index b165bc853edc33167b787197239ad284da695085..ddf87d1f2515c6ccc4dfecf429202e2e8e14c536 100644 (file)
@@ -3,7 +3,7 @@ require 'spec_helper'
 describe 'ceilometer::agent::central' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index bf51310f62a4ccd03f0c1f6139933a95017bd4b5..76497290aa8012292be16b9fd1c0e4e4ed7ff405 100644 (file)
@@ -5,7 +5,7 @@ describe 'ceilometer::agent::compute' do
   let :pre_condition do
     "include nova\n" +
     "include nova::compute\n" +
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index 40a031aef0e3354f399a43f54ac4dcddb282386f..695d9642a20d6686a8b8d9abab221019f31193c0 100644 (file)
@@ -23,7 +23,7 @@ require 'spec_helper'
 describe 'ceilometer::agent::notification' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index 52bb60fabd998fe54cd5622530643c94ee0cc68c..5dda81429312221d5ecb84532150a93eb8c2bc1d 100644 (file)
@@ -5,7 +5,7 @@ describe 'ceilometer::agent::polling' do
   let :pre_condition do
     "include nova\n" +
     "include nova::compute\n" +
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index 145787dd5999d45958e0cf57b7d273057d74852f..27b70e8ef9730fea63d61ac24772fb7a7c440b3a 100644 (file)
@@ -3,7 +3,7 @@ require 'spec_helper'
 describe 'ceilometer::api' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }
      include ::ceilometer::db"
   end
 
@@ -96,7 +96,7 @@ describe 'ceilometer::api' do
       let :pre_condition do
         "include ::apache
          include ::ceilometer::db
-         class { 'ceilometer': metering_secret => 's3cr3t' }"
+         class { 'ceilometer': telemetry_secret => 's3cr3t' }"
       end
 
       it 'configures ceilometer-api service with Apache' do
@@ -117,7 +117,7 @@ describe 'ceilometer::api' do
       let :pre_condition do
         "include ::apache
          include ::ceilometer::db
-         class { 'ceilometer': metering_secret => 's3cr3t' }"
+         class { 'ceilometer': telemetry_secret => 's3cr3t' }"
       end
 
       it_raises 'a Puppet::Error', /Invalid service_name/
index 6c74e2ba0197bed783676cb9a26e6c4fa3947b8d..4763ae89203fa994089807a1f5bce447c2ee8ae7 100644 (file)
@@ -3,7 +3,7 @@ require 'spec_helper'
 describe 'ceilometer::collector' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   shared_examples_for 'ceilometer-collector' do
index 96d5dcbf819f8ec1e720128101c4d8cfd5c1b925..e4554005903740b6cbc610fed5d39fed3de8b158 100644 (file)
@@ -3,7 +3,7 @@ require 'spec_helper'
 describe 'ceilometer::dispatcher::gnocchi' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index 765e613f1ba2f52e7353fbb4bb7aa48be8dcad27..3bf6fe051fca1acf8ccf1a503a6f8682572adaff 100644 (file)
@@ -23,7 +23,7 @@ require 'spec_helper'
 describe 'ceilometer::expirer' do
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   let :params do
index 111ec4642832effa113de9996dec1cec235af7fa..38f41b13a2f7f4a5c170219a5776ce3921362f84 100644 (file)
@@ -7,7 +7,7 @@ describe 'ceilometer' do
       :http_timeout               => '600',
       :event_time_to_live         => '604800',
       :metering_time_to_live      => '604800',
-      :metering_secret            => 'metering-s3cr3t',
+      :telemetry_secret           => 'metering-s3cr3t',
       :package_ensure             => 'present',
       :debug                      => 'False',
       :log_dir                    => '/var/log/ceilometer',
@@ -102,13 +102,13 @@ describe 'ceilometer' do
       )
     end
 
-    it 'configures required metering_secret' do
-      is_expected.to contain_ceilometer_config('publisher/metering_secret').with_value('metering-s3cr3t')
-      is_expected.to contain_ceilometer_config('publisher/metering_secret').with_value( params[:metering_secret] ).with_secret(true)
+    it 'configures required telemetry_secret' do
+      is_expected.to contain_ceilometer_config('publisher/telemetry_secret').with_value('metering-s3cr3t')
+      is_expected.to contain_ceilometer_config('publisher/telemetry_secret').with_value( params[:telemetry_secret] ).with_secret(true)
     end
 
-    context 'without the required metering_secret' do
-      before { params.delete(:metering_secret) }
+    context 'without the required telemetry_secret' do
+      before { params.delete(:telemetry_secret) }
       it { expect { is_expected.to raise_error(Puppet::Error) } }
     end
 
@@ -208,6 +208,25 @@ describe 'ceilometer' do
     end
   end
 
+
+  # Cleanup in Ocata
+  shared_examples_for 'using old metering_secret param' do
+    context "with old metering_secret param it uses telemetry_secret instead" do
+      before { params.merge!(
+          :metering_secret => 'broncos',
+          :telemetry_secret => 'metering-s3cr3t',
+      ) }
+      it { is_expected.to contain_ceilometer_config('publisher/telemetry_secret').with_value('metering-s3cr3t') }
+    end
+    context "with old metering_secret param set and telemetry_secret unset" do
+      before { params.merge!(
+          :metering_secret => 'broncos',
+          :telemetry_secret => nil,
+      ) }
+      it { is_expected.to contain_ceilometer_config('publisher/telemetry_secret').with_value('broncos') }
+    end
+  end
+
   shared_examples_for 'rabbit with SSL support' do
     context "with default parameters" do
       it { is_expected.to contain_ceilometer_config('oslo_messaging_rabbit/rabbit_use_ssl').with_value('<SERVICE DEFAULT>') }
index 54fcfb3a56395823cfcbe53680e51ad2de9b723d..c1840523e4ff43f1eeac09415a95de7be526b7e4 100644 (file)
@@ -11,7 +11,7 @@ describe 'ceilometer::wsgi::apache' do
   end
 
   let :pre_condition do
-    "class { 'ceilometer': metering_secret => 's3cr3t' }"
+    "class { 'ceilometer': telemetry_secret => 's3cr3t' }"
   end
 
   shared_examples_for 'apache serving ceilometer with mod_wsgi' do