diff --git a/examples/ceilometer_with_gnocchi.pp b/examples/ceilometer_with_gnocchi.pp index abf43c56..22ed41f9 100644 --- a/examples/ceilometer_with_gnocchi.pp +++ b/examples/ceilometer_with_gnocchi.pp @@ -11,7 +11,6 @@ class { 'ceilometer::db': class { 'ceilometer::keystone::auth': password => 'a_big_secret', } -class { 'ceilometer::expirer': } class { 'ceilometer::agent::polling': } class { 'ceilometer::agent::notification': } diff --git a/examples/site.pp b/examples/site.pp index b077f1e8..09b0b675 100644 --- a/examples/site.pp +++ b/examples/site.pp @@ -59,9 +59,6 @@ node default { ipmi_namespace => false, } - # Purge old meters - class { 'ceilometer::expirer': } - # Install notification agent class { 'ceilometer::agent::notification': } diff --git a/manifests/expirer.pp b/manifests/expirer.pp index acb0055a..4e19b574 100644 --- a/manifests/expirer.pp +++ b/manifests/expirer.pp @@ -17,6 +17,7 @@ # # == Class: ceilometer::expirer # +# DEPRECATED! # Setups Ceilometer Expirer service to enable TTL feature. # # === Parameters @@ -25,52 +26,30 @@ # (optional) Whether to configure a crontab entry to run the expiry. # When set to False, Puppet will try to remove the crontab. # It's useful when we upgrade from Ocata to Pike and want to remove it. -# Defaults to true. +# Defaults to undef. # # [*minute*] -# (optional) Defaults to '1'. +# (optional) Defaults to undef. # # [*hour*] -# (optional) Defaults to '0'. +# (optional) Defaults to undef. # # [*monthday*] -# (optional) Defaults to '*'. +# (optional) Defaults to undef. # # [*month*] -# (optional) Defaults to '*'. +# (optional) Defaults to undef. # # [*weekday*] -# (optional) Defaults to '*'. +# (optional) Defaults to undef. # class ceilometer::expirer ( - $enable_cron = true, - $minute = 1, - $hour = 0, - $monthday = '*', - $month = '*', - $weekday = '*', + $enable_cron = undef, + $minute = undef, + $hour = undef, + $monthday = undef, + $month = undef, + $weekday = undef, ) { - - include ceilometer::params - - Anchor['ceilometer::install::end'] ~> Class['ceilometer::expirer'] - - if $enable_cron { - $ensure = 'present' - } else { - $ensure = 'absent' - } - - cron { 'ceilometer-expirer': - ensure => $ensure, - command => $ceilometer::params::expirer_command, - environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh', - user => 'ceilometer', - minute => $minute, - hour => $hour, - monthday => $monthday, - month => $month, - weekday => $weekday - } - + warning('The ceilometer::expirer class is deprecated and has no effect') } diff --git a/manifests/params.pp b/manifests/params.pp index 1b13df50..c3082707 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -7,7 +7,6 @@ class ceilometer::params { include openstacklib::defaults $dbsync_command = 'ceilometer-upgrade' - $expirer_command = 'ceilometer-expirer' $user = 'ceilometer' $event_pipeline = '/etc/ceilometer/event_pipeline.yaml' $pipeline = '/etc/ceilometer/pipeline.yaml' diff --git a/releasenotes/notes/deprecate-expirer-12d11f4a2b277c3f.yaml b/releasenotes/notes/deprecate-expirer-12d11f4a2b277c3f.yaml new file mode 100644 index 00000000..83a131df --- /dev/null +++ b/releasenotes/notes/deprecate-expirer-12d11f4a2b277c3f.yaml @@ -0,0 +1,5 @@ +--- +deprecations: + - | + The ``ceilometer::expirer`` class has been deprecated and has no effect, + and it will be removed in a future release. diff --git a/spec/acceptance/ceilometer_wsgi_apache_spec.rb b/spec/acceptance/ceilometer_wsgi_apache_spec.rb index b76c0840..6b2aa105 100644 --- a/spec/acceptance/ceilometer_wsgi_apache_spec.rb +++ b/spec/acceptance/ceilometer_wsgi_apache_spec.rb @@ -22,9 +22,5 @@ describe 'ceilometer with mysql' do apply_manifest(pp, :catch_changes => true) end - describe cron do - it { is_expected.to have_entry('1 0 * * * ceilometer-expirer').with_user('ceilometer') } - end - end end diff --git a/spec/classes/ceilometer_expirer_spec.rb b/spec/classes/ceilometer_expirer_spec.rb deleted file mode 100644 index e354a0ec..00000000 --- a/spec/classes/ceilometer_expirer_spec.rb +++ /dev/null @@ -1,102 +0,0 @@ -# -# Copyright (C) 2013 eNovance SAS -# -# Author: Emilien Macchi -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# Unit tests for ceilometer::expirer -# - -require 'spec_helper' - -describe 'ceilometer::expirer' do - - let :pre_condition do - "class { 'ceilometer': telemetry_secret => 's3cr3t' }" - end - - let :params do - {} - end - - shared_examples_for 'ceilometer-expirer' do - - it { is_expected.to contain_class('ceilometer::deps') } - it { is_expected.to contain_class('ceilometer::params') } - - it 'installs ceilometer common package' do - is_expected.to contain_package('ceilometer-common').with( - :ensure => 'present', - :name => platform_params[:common_package_name] - ) - end - - it 'configures a cron' do - is_expected.to contain_cron('ceilometer-expirer').with( - :ensure => 'present', - :command => 'ceilometer-expirer', - :environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh', - :user => 'ceilometer', - :minute => 1, - :hour => 0, - :monthday => '*', - :month => '*', - :weekday => '*' - ) - end - - context 'with cron not enabled' do - before do - params.merge!({ - :enable_cron => false }) - end - it { - is_expected.to contain_cron('ceilometer-expirer').with( - :ensure => 'absent', - :command => 'ceilometer-expirer', - :environment => 'PATH=/bin:/usr/bin:/usr/sbin SHELL=/bin/sh', - :user => 'ceilometer', - :minute => 1, - :hour => 0, - :monthday => '*', - :month => '*', - :weekday => '*' - ) - } - end - - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - let :platform_params do - case facts[:osfamily] - when 'Debian' - { :common_package_name => 'ceilometer-common' } - when 'RedHat' - { :common_package_name => 'openstack-ceilometer-common' } - end - end - - it_behaves_like 'ceilometer-expirer' - end - end - -end