Add manage_service feature
puppet-ceilometer lacks of disabling service managing. This patch adds $manage_service parameter to all relevant classes. Closes-bug: #1359823 Change-Id: Iee545b46ef5d7cf92859356ae84b8103564bf047
This commit is contained in:
parent
3c38c6522d
commit
10d38bd819
|
@ -2,10 +2,16 @@
|
|||
#
|
||||
# == Parameters
|
||||
# [*enabled*]
|
||||
# Should the service be enabled. Optional. Defauls to true
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
class ceilometer::agent::central (
|
||||
$enabled = true,
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
) {
|
||||
|
||||
include ceilometer::params
|
||||
|
@ -18,10 +24,12 @@ class ceilometer::agent::central (
|
|||
name => $::ceilometer::params::agent_central_package_name,
|
||||
}
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-agent-central']
|
||||
|
|
|
@ -3,11 +3,16 @@
|
|||
#
|
||||
# == Parameters
|
||||
# [*enabled*]
|
||||
# should the service be started or not
|
||||
# Optional. Defaults to true
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
class ceilometer::agent::compute (
|
||||
$enabled = true,
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
) inherits ceilometer {
|
||||
|
||||
include ceilometer::params
|
||||
|
@ -30,10 +35,12 @@ class ceilometer::agent::compute (
|
|||
}
|
||||
}
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-agent-compute']
|
||||
|
|
|
@ -23,10 +23,13 @@
|
|||
# file with the OVS plugin if both are on the same machine.
|
||||
#
|
||||
# === Parameters
|
||||
#
|
||||
# [*enabled*]
|
||||
# (optional) Should the service be started or not
|
||||
# Defaults to true
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*ack_on_event_error*]
|
||||
# (optional) Acknowledge message when event persistence fails.
|
||||
|
@ -38,6 +41,7 @@
|
|||
#
|
||||
|
||||
class ceilometer::agent::notification (
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
$ack_on_event_error = true,
|
||||
$store_events = false
|
||||
|
@ -50,10 +54,12 @@ class ceilometer::agent::notification (
|
|||
Package[$::ceilometer::params::agent_notification_package_name] -> Service['ceilometer-agent-notification']
|
||||
ensure_packages([$::ceilometer::params::agent_notification_package_name])
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-agent-notification']
|
||||
|
|
|
@ -2,18 +2,32 @@
|
|||
#
|
||||
# == Params
|
||||
# [*enabled*]
|
||||
# should the service be enabled
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*evaluation_interval*]
|
||||
# define the time interval for the alarm evaluator
|
||||
# (optional) Define the time interval for the alarm evaluator
|
||||
# Defaults to 60.
|
||||
#
|
||||
# [*evaluation_service*]
|
||||
# define which service use for the evaluator
|
||||
# (optional) Define which service use for the evaluator
|
||||
# Defaults to 'ceilometer.alarm.service.SingletonAlarmService'.
|
||||
#
|
||||
# [*partition_rpc_topic*]
|
||||
# define which topic the alarm evaluator should access
|
||||
# (optional) Define which topic the alarm evaluator should access
|
||||
# Defaults to 'alarm_partition_coordination'.
|
||||
#
|
||||
# [*record_history*]
|
||||
# Record alarm change events
|
||||
# (optional) Record alarm change events
|
||||
# Defaults to true.
|
||||
#
|
||||
class ceilometer::alarm::evaluator (
|
||||
$enabled = true,
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
$evaluation_interval = 60,
|
||||
$evaluation_service = 'ceilometer.alarm.service.SingletonAlarmService',
|
||||
$partition_rpc_topic = 'alarm_partition_coordination',
|
||||
|
@ -30,10 +44,12 @@ class ceilometer::alarm::evaluator (
|
|||
Package[$::ceilometer::params::alarm_package_name] -> Package<| title == 'ceilometer-alarm' |>
|
||||
ensure_packages($::ceilometer::params::alarm_package_name)
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-alarm-evaluator']
|
||||
|
|
|
@ -2,18 +2,31 @@
|
|||
#
|
||||
# == Params
|
||||
# [*enabled*]
|
||||
# should the service be enabled
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*notifier_rpc_topic*]
|
||||
# define on which topic the notifier will have
|
||||
# access
|
||||
# (optional) Define on which topic the notifier will have access.
|
||||
# Defaults to undef.
|
||||
#
|
||||
# [*rest_notifier_certificate_key*]
|
||||
# define the certificate key for the rest service
|
||||
# (optional) Define the certificate key for the rest service.
|
||||
# Defaults to undef.
|
||||
#
|
||||
# [*rest_notifier_certificate_file*]
|
||||
# define the certificate file for the rest service
|
||||
# (optional) Define the certificate file for the rest service.
|
||||
# Defaults to undef.
|
||||
#
|
||||
# [*rest_notifier_ssl_verify*]
|
||||
# should the ssl verify parameter be enabled
|
||||
# (optional) Should the ssl verify parameter be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
class ceilometer::alarm::notifier (
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
$notifier_rpc_topic = undef,
|
||||
$rest_notifier_certificate_key = undef,
|
||||
|
@ -31,10 +44,12 @@ class ceilometer::alarm::notifier (
|
|||
Package[$::ceilometer::params::alarm_package_name] -> Package<| title == 'ceilometer-alarm' |>
|
||||
ensure_packages($::ceilometer::params::alarm_package_name)
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-alarm-notifier']
|
||||
|
|
|
@ -2,41 +2,54 @@
|
|||
#
|
||||
# == Parameters
|
||||
# [*enabled*]
|
||||
# should the service be enabled. Optional. Defaults to true
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*keystone_host*]
|
||||
# keystone's admin endpoint IP/Host. Optional. Defaults to 127.0.0.1
|
||||
# (optional) Keystone's admin endpoint IP/Host.
|
||||
# Defaults to '127.0.0.1'
|
||||
#
|
||||
# [*keystone_port*]
|
||||
# keystone's admin endpoint port. Optional. Defaults to 35357
|
||||
# (optional) Keystone's admin endpoint port.
|
||||
# Defaults to 35357
|
||||
#
|
||||
# [*keystone_auth_admin_prefix*]
|
||||
# 'path' to the keystone admin endpoint. Optional. Defaults to false (empty)
|
||||
# (optional) 'path' to the keystone admin endpoint.
|
||||
# Define to a path starting with a '/' and without trailing '/'.
|
||||
# Eg.: '/keystone/admin' to match keystone::wsgi::apache default.
|
||||
# Defaults to false (empty)
|
||||
#
|
||||
# [*keystone_protocol*] http/https
|
||||
# Optional. Defaults to https
|
||||
# [*keystone_protocol*]
|
||||
# (optional) 'http' or 'https'
|
||||
# Defaults to 'https'.
|
||||
#
|
||||
# [*keytone_user*] user to authenticate with
|
||||
# Optional. Defaults to ceilometer
|
||||
# [*keytone_user*]
|
||||
# (optional) User to authenticate with.
|
||||
# Defaults to 'ceilometer'.
|
||||
#
|
||||
# [*keystone_tenant*] tenant to authenticate with
|
||||
# Optional. Defaults to services
|
||||
# [*keystone_tenant*]
|
||||
# (optional) Tenant to authenticate with.
|
||||
# Defaults to 'services'.
|
||||
#
|
||||
# [*keystone_password*] password to authenticate with
|
||||
# [*keystone_password*]
|
||||
# Password to authenticate with.
|
||||
# Mandatory.
|
||||
#
|
||||
# [*host*]
|
||||
# (optional) The ceilometer api bind address
|
||||
# Defaults to 0.0.0.0
|
||||
# [*host*]
|
||||
# (optional) The ceilometer api bind address.
|
||||
# Defaults to 0.0.0.0
|
||||
#
|
||||
# [*port*]
|
||||
# (optional) The ceilometer api port
|
||||
# Defaults to 8777
|
||||
# [*port*]
|
||||
# (optional) The ceilometer api port.
|
||||
# Defaults to 8777
|
||||
#
|
||||
|
||||
class ceilometer::api (
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
$keystone_host = '127.0.0.1',
|
||||
$keystone_port = '35357',
|
||||
|
@ -63,10 +76,12 @@ class ceilometer::api (
|
|||
name => $::ceilometer::params::api_package_name,
|
||||
}
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-api']
|
||||
|
|
|
@ -2,10 +2,16 @@
|
|||
#
|
||||
# == Params
|
||||
# [*enabled*]
|
||||
# should the service be enabled
|
||||
# (optional) Should the service be enabled.
|
||||
# Defaults to true.
|
||||
#
|
||||
# [*manage_service*]
|
||||
# (optional) Whether the service should be managed by Puppet.
|
||||
# Defaults to true.
|
||||
#
|
||||
class ceilometer::collector (
|
||||
$enabled = true,
|
||||
$manage_service = true,
|
||||
$enabled = true,
|
||||
) {
|
||||
|
||||
include ceilometer::params
|
||||
|
@ -15,12 +21,14 @@ class ceilometer::collector (
|
|||
Package[$::ceilometer::params::collector_package_name] -> Service['ceilometer-collector']
|
||||
ensure_packages([$::ceilometer::params::collector_package_name])
|
||||
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
Class['ceilometer::db'] -> Service['ceilometer-collector']
|
||||
Exec['ceilometer-dbsync'] ~> Service['ceilometer-collector']
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
if $manage_service {
|
||||
if $enabled {
|
||||
$service_ensure = 'running'
|
||||
Class['ceilometer::db'] -> Service['ceilometer-collector']
|
||||
Exec['ceilometer-dbsync'] ~> Service['ceilometer-collector']
|
||||
} else {
|
||||
$service_ensure = 'stopped'
|
||||
}
|
||||
}
|
||||
|
||||
Package['ceilometer-common'] -> Service['ceilometer-collector']
|
||||
|
|
|
@ -7,7 +7,8 @@ describe 'ceilometer::agent::central' do
|
|||
end
|
||||
|
||||
let :params do
|
||||
{ :enabled => true }
|
||||
{ :enabled => true,
|
||||
:manage_service => true }
|
||||
end
|
||||
|
||||
shared_examples_for 'ceilometer-agent-central' do
|
||||
|
@ -28,14 +29,40 @@ describe 'ceilometer::agent::central' do
|
|||
)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-central service' do
|
||||
should contain_service('ceilometer-agent-central').with(
|
||||
:ensure => 'running',
|
||||
:name => platform_params[:agent_service_name],
|
||||
:enable => true,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
[{:enabled => true}, {:enabled => false}].each do |param_hash|
|
||||
context "when service should be #{param_hash[:enabled] ? 'enabled' : 'disabled'}" do
|
||||
before do
|
||||
params.merge!(param_hash)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-central service' do
|
||||
should contain_service('ceilometer-agent-central').with(
|
||||
:ensure => (params[:manage_service] && params[:enabled]) ? 'running' : 'stopped',
|
||||
:name => platform_params[:agent_service_name],
|
||||
:enable => params[:enabled],
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with disabled service managing' do
|
||||
before do
|
||||
params.merge!({
|
||||
:manage_service => false,
|
||||
:enabled => false })
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-central service' do
|
||||
should contain_service('ceilometer-agent-central').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:agent_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
|
|
@ -9,7 +9,8 @@ describe 'ceilometer::agent::compute' do
|
|||
end
|
||||
|
||||
let :params do
|
||||
{ :enabled => true }
|
||||
{ :enabled => true,
|
||||
:manage_service => true }
|
||||
end
|
||||
|
||||
shared_examples_for 'ceilometer-agent-compute' do
|
||||
|
@ -38,16 +39,6 @@ describe 'ceilometer::agent::compute' do
|
|||
)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-compute service' do
|
||||
should contain_service('ceilometer-agent-compute').with(
|
||||
:ensure => 'running',
|
||||
:name => platform_params[:agent_service_name],
|
||||
:enable => true,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
|
||||
it 'configures nova notification driver' do
|
||||
should contain_file_line_after('nova-notification-driver-common').with(
|
||||
:line => 'notification_driver=nova.openstack.common.notifier.rpc_notifier',
|
||||
|
@ -61,6 +52,43 @@ describe 'ceilometer::agent::compute' do
|
|||
)
|
||||
end
|
||||
|
||||
[{:enabled => true}, {:enabled => false}].each do |param_hash|
|
||||
context "when service should be #{param_hash[:enabled] ? 'enabled' : 'disabled'}" do
|
||||
before do
|
||||
params.merge!(param_hash)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-compute service' do
|
||||
|
||||
should contain_service('ceilometer-agent-compute').with(
|
||||
:ensure => (params[:manage_service] && params[:enabled]) ? 'running' : 'stopped',
|
||||
:name => platform_params[:agent_service_name],
|
||||
:enable => params[:enabled],
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with disabled service managing' do
|
||||
before do
|
||||
params.merge!({
|
||||
:manage_service => false,
|
||||
:enabled => false })
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-compute service' do
|
||||
should contain_service('ceilometer-agent-compute').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:agent_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
|
|
@ -27,7 +27,9 @@ describe 'ceilometer::agent::notification' do
|
|||
end
|
||||
|
||||
let :params do
|
||||
{ :ack_on_event_error => true,
|
||||
{ :manage_service => true,
|
||||
:enabled => true,
|
||||
:ack_on_event_error => true,
|
||||
:store_events => false }
|
||||
end
|
||||
|
||||
|
@ -39,21 +41,47 @@ describe 'ceilometer::agent::notification' do
|
|||
should contain_package(platform_params[:agent_notification_package_name])
|
||||
end
|
||||
|
||||
it 'configures ceilometer agent notification service' do
|
||||
should contain_service('ceilometer-agent-notification').with(
|
||||
:ensure => 'running',
|
||||
:name => platform_params[:agent_notification_service_name],
|
||||
:enable => true,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
|
||||
it 'configures notifications parameters in ceilometer.conf' do
|
||||
should contain_ceilometer_config('notification/ack_on_event_error').with_value( params[:ack_on_event_error] )
|
||||
should contain_ceilometer_config('notification/store_events').with_value( params[:store_events] )
|
||||
end
|
||||
|
||||
[{:enabled => true}, {:enabled => false}].each do |param_hash|
|
||||
context "when service should be #{param_hash[:enabled] ? 'enabled' : 'disabled'}" do
|
||||
before do
|
||||
params.merge!(param_hash)
|
||||
end
|
||||
|
||||
it 'configures ceilometer agent notification service' do
|
||||
should contain_service('ceilometer-agent-notification').with(
|
||||
:ensure => (params[:manage_service] && params[:enabled]) ? 'running' : 'stopped',
|
||||
:name => platform_params[:agent_notification_service_name],
|
||||
:enable => params[:enabled],
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with disabled service managing' do
|
||||
before do
|
||||
params.merge!({
|
||||
:manage_service => false,
|
||||
:enabled => false })
|
||||
end
|
||||
|
||||
it 'configures ceilometer-agent-notification service' do
|
||||
should contain_service('ceilometer-agent-notification').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:agent_notification_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
|
|
@ -12,6 +12,7 @@ describe 'ceilometer::alarm::evaluator' do
|
|||
:partition_rpc_topic => 'alarm_partition_coordination',
|
||||
:record_history => true,
|
||||
:enabled => true,
|
||||
:manage_service => true,
|
||||
}
|
||||
end
|
||||
|
||||
|
@ -32,17 +33,6 @@ describe 'ceilometer::alarm::evaluator' do
|
|||
)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-alarm-evaluator service' do
|
||||
should contain_service('ceilometer-alarm-evaluator').with(
|
||||
:ensure => 'running',
|
||||
:name => platform_params[:alarm_evaluator_service_name],
|
||||
:enable => true,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
|
||||
|
||||
it 'configures alarm evaluator' do
|
||||
should contain_ceilometer_config('alarm/evaluation_interval').with_value( params[:evaluation_interval] )
|
||||
should contain_ceilometer_config('alarm/evaluation_service').with_value( params[:evaluation_service] )
|
||||
|
@ -63,14 +53,50 @@ describe 'ceilometer::alarm::evaluator' do
|
|||
it { should contain_ceilometer_config('alarm/partition_rpc_topic').with_value(params[:partition_rpc_topic]) }
|
||||
end
|
||||
|
||||
context 'when override the evaluation interval with a non numeric value' do
|
||||
context 'when override the evaluation interval with a non numeric value' do
|
||||
before do
|
||||
params.merge!(:evaluation_interval => 'NaN')
|
||||
end
|
||||
|
||||
it { expect { should contain_ceilometer_config('alarm/evaluation_interval') }.to\
|
||||
raise_error(Puppet::Error, /validate_re\(\): .* does not match/) }
|
||||
end
|
||||
|
||||
[{:enabled => true}, {:enabled => false}].each do |param_hash|
|
||||
context "when service should be #{param_hash[:enabled] ? 'enabled' : 'disabled'}" do
|
||||
before do
|
||||
params.merge!(:evaluation_interval => 'NaN')
|
||||
params.merge!(param_hash)
|
||||
end
|
||||
|
||||
it { expect { should contain_ceilometer_config('alarm/evaluation_interval') }.to\
|
||||
raise_error(Puppet::Error, /validate_re\(\): .* does not match/) }
|
||||
it 'configures ceilometer-alarm-evaluator service' do
|
||||
should contain_service('ceilometer-alarm-evaluator').with(
|
||||
:ensure => (params[:manage_service] && params[:enabled]) ? 'running' : 'stopped',
|
||||
:name => platform_params[:alarm_evaluator_service_name],
|
||||
:enable => params[:enabled],
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with disabled service managing' do
|
||||
before do
|
||||
params.merge!({
|
||||
:manage_service => false,
|
||||
:enabled => false })
|
||||
end
|
||||
|
||||
it 'configures ceilometer-alarm-evaluator service' do
|
||||
should contain_service('ceilometer-alarm-evaluator').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:alarm_evaluator_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
|
|
@ -13,6 +13,7 @@ describe 'ceilometer::alarm::notifier' do
|
|||
#:rest_notifier_certificate_file => 'UNSET',
|
||||
#:rest_notifier_ssl_verify => true,
|
||||
:enabled => true,
|
||||
:manage_service => true,
|
||||
}
|
||||
end
|
||||
|
||||
|
@ -33,17 +34,6 @@ describe 'ceilometer::alarm::notifier' do
|
|||
)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-alarm-notifier service' do
|
||||
should contain_service('ceilometer-alarm-notifier').with(
|
||||
:ensure => 'running',
|
||||
:name => platform_params[:alarm_notifier_service_name],
|
||||
:enable => true,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
|
||||
|
||||
it 'configures alarm notifier' do
|
||||
should_not contain_ceilometer_config('alarm/notifier_rpc_topic')
|
||||
should_not contain_ceilometer_config('alarm/rest_notifier_certificate_key')
|
||||
|
@ -64,6 +54,42 @@ describe 'ceilometer::alarm::notifier' do
|
|||
it { should contain_ceilometer_config('alarm/rest_notifier_ssl_verify').with_value(params[:rest_notifier_ssl_verify]) }
|
||||
end
|
||||
|
||||
[{:enabled => true}, {:enabled => false}].each do |param_hash|
|
||||
context "when service should be #{param_hash[:enabled] ? 'enabled' : 'disabled'}" do
|
||||
before do
|
||||
params.merge!(param_hash)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-alarm-notifier service' do
|
||||
should contain_service('ceilometer-alarm-notifier').with(
|
||||
:ensure => (params[:manage_service] && params[:enabled]) ? 'running' : 'stopped',
|
||||
:name => platform_params[:alarm_notifier_service_name],
|
||||
:enable => params[:enabled],
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with disabled service managing' do
|
||||
before do
|
||||
params.merge!({
|
||||
:manage_service => false,
|
||||
:enabled => false })
|
||||
end
|
||||
|
||||
it 'configures ceilometer-alarm-notifier service' do
|
||||
should contain_service('ceilometer-alarm-notifier').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:alarm_notifier_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
|
|
@ -8,6 +8,7 @@ describe 'ceilometer::api' do
|
|||
|
||||
let :params do
|
||||
{ :enabled => true,
|
||||
:manage_service => true,
|
||||
:keystone_host => '127.0.0.1',
|
||||
:keystone_port => '35357',
|
||||
:keystone_protocol => 'http',
|
||||
|
@ -35,18 +36,6 @@ describe 'ceilometer::api' do
|
|||
)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-api service' do
|
||||
should contain_service('ceilometer-api').with(
|
||||
:ensure => 'running',
|
||||
:name => platform_params[:api_service_name],
|
||||
:enable => true,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true,
|
||||
:require => 'Class[Ceilometer::Db]',
|
||||
:subscribe => 'Exec[ceilometer-dbsync]'
|
||||
)
|
||||
end
|
||||
|
||||
it 'configures keystone authentication middleware' do
|
||||
should contain_ceilometer_config('keystone_authtoken/auth_host').with_value( params[:keystone_host] )
|
||||
should contain_ceilometer_config('keystone_authtoken/auth_port').with_value( params[:keystone_port] )
|
||||
|
@ -83,6 +72,44 @@ describe 'ceilometer::api' do
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
[{:enabled => true}, {:enabled => false}].each do |param_hash|
|
||||
context "when service should be #{param_hash[:enabled] ? 'enabled' : 'disabled'}" do
|
||||
before do
|
||||
params.merge!(param_hash)
|
||||
end
|
||||
|
||||
it 'configures ceilometer-api service' do
|
||||
should contain_service('ceilometer-api').with(
|
||||
:ensure => (params[:manage_service] && params[:enabled]) ? 'running' : 'stopped',
|
||||
:name => platform_params[:api_service_name],
|
||||
:enable => params[:enabled],
|
||||
:hasstatus => true,
|
||||
:hasrestart => true,
|
||||
:require => 'Class[Ceilometer::Db]',
|
||||
:subscribe => 'Exec[ceilometer-dbsync]'
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with disabled service managing' do
|
||||
before do
|
||||
params.merge!({
|
||||
:manage_service => false,
|
||||
:enabled => false })
|
||||
end
|
||||
|
||||
it 'configures ceilometer-api service' do
|
||||
should contain_service('ceilometer-api').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:api_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'on Debian platforms' do
|
||||
|
|
|
@ -42,6 +42,33 @@ describe 'ceilometer::collector' do
|
|||
|
||||
# Catalog compilation does not crash for lack of ceilometer::db
|
||||
it { should compile }
|
||||
|
||||
it 'configures ceilometer-collector service' do
|
||||
should contain_service('ceilometer-collector').with(
|
||||
:ensure => 'stopped',
|
||||
:name => platform_params[:collector_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
context 'when service management is disabled' do
|
||||
let :params do
|
||||
{ :enabled => false,
|
||||
:manage_service => false }
|
||||
end
|
||||
|
||||
it 'configures ceilometer-collector service' do
|
||||
should contain_service('ceilometer-collector').with(
|
||||
:ensure => nil,
|
||||
:name => platform_params[:collector_service_name],
|
||||
:enable => false,
|
||||
:hasstatus => true,
|
||||
:hasrestart => true
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue