# (optional) Save event details.
# Defaults to false
#
+# [*notification_workers*]
+# (optional) Number of workers for notification service (integer value).
+# Defaults to $::os_service_default
+#
# [*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,
- $package_ensure = 'present',
+ $manage_service = true,
+ $enabled = true,
+ $ack_on_event_error = true,
+ $store_events = false,
+ $notification_workers = $::os_service_default,
+ $package_ensure = 'present',
) {
include ::ceilometer::params
}
ceilometer_config {
- 'notification/ack_on_event_error': value => $ack_on_event_error;
- 'notification/store_events' : value => $store_events;
+ 'notification/ack_on_event_error' : value => $ack_on_event_error;
+ 'notification/store_events' : value => $store_events;
+ 'DEFAULT/notification_workers' : value => $notification_workers;
}
}
# to make ceilometer-api be a web app using apache mod_wsgi.
# Defaults to '$::ceilometer::params::api_service_name'
#
+# [*api_workers*]
+# (optional) Number of workers for Ceilometer API server (integer value).
+# Defaults to $::os_service_default
+#
class ceilometer::api (
$manage_service = true,
$enabled = true,
$host = '0.0.0.0',
$port = '8777',
$service_name = $::ceilometer::params::api_service_name,
+ $api_workers = $::os_service_default,
# DEPRECATED PARAMETERS
$keystone_host = '127.0.0.1',
$keystone_port = '35357',
}
ceilometer_config {
+ 'DEFAULT/api_workers' : value => $api_workers;
'keystone_authtoken/admin_tenant_name' : value => $keystone_tenant;
'keystone_authtoken/admin_user' : value => $keystone_user;
'keystone_authtoken/admin_password' : value => $keystone_password, secret => true;
# (optional) the ceilometer collector udp bind port.
# Defaults to '4952'
#
+# [*collector_workers*]
+# (optional) Number of workers for collector service (integer value).
+# Defaults to $::os_service_default
+#
class ceilometer::collector (
- $manage_service = true,
- $enabled = true,
- $package_ensure = 'present',
- $udp_address = '0.0.0.0',
- $udp_port = '4952',
+ $manage_service = true,
+ $enabled = true,
+ $package_ensure = 'present',
+ $udp_address = '0.0.0.0',
+ $udp_port = '4952',
+ $collector_workers = $::os_service_default,
) {
include ::ceilometer::params
}
ceilometer_config {
- 'collector/udp_address' : value => $udp_address;
- 'collector/udp_port' : value => $udp_port;
+ 'collector/udp_address': value => $udp_address;
+ 'collector/udp_port': value => $udp_port;
+ 'DEFAULT/collector_workers': value => $collector_workers;
}
Package[$::ceilometer::params::collector_package_name] -> Service['ceilometer-collector']
end
it 'configures notifications parameters in ceilometer.conf' do
+ is_expected.to contain_ceilometer_config('DEFAULT/notification_workers').with_value('<SERVICE DEFAULT>')
is_expected.to contain_ceilometer_config('notification/ack_on_event_error').with_value( params[:ack_on_event_error] )
is_expected.to contain_ceilometer_config('notification/store_events').with_value( params[:store_events] )
end
context 'on Debian platforms' do
let :facts do
- { :osfamily => 'Debian' }
+ @default_facts.merge({ :osfamily => 'Debian' })
end
let :platform_params do
context 'on RedHat platforms' do
let :facts do
- { :osfamily => 'RedHat' }
+ @default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
context 'on RHEL 7' do
let :facts do
- { :osfamily => 'RedHat',
- :operatingsystem => 'RedHat',
- :operatingsystemmajrelease => 7
- }
+ @default_facts.merge(
+ { :osfamily => 'RedHat',
+ :operatingsystem => 'RedHat',
+ :operatingsystemmajrelease => 7
+ }
+ )
end
let :platform_params do
context 'on CentOS 7' do
let :facts do
- { :osfamily => 'RedHat',
- :operatingsystem => 'CentOS',
- :operatingsystemmajrelease => 7
- }
+ @default_facts.merge(
+ { :osfamily => 'RedHat',
+ :operatingsystem => 'CentOS',
+ :operatingsystemmajrelease => 7
+ }
+ )
end
let :platform_params do
context 'on Scientific 7' do
let :facts do
- { :osfamily => 'RedHat',
- :operatingsystem => 'Scientific',
- :operatingsystemmajrelease => 7
- }
+ @default_facts.merge(
+ { :osfamily => 'RedHat',
+ :operatingsystem => 'Scientific',
+ :operatingsystemmajrelease => 7
+ }
+ )
end
let :platform_params do
context 'on Fedora 20' do
let :facts do
- { :osfamily => 'RedHat',
- :operatingsystem => 'Fedora',
- :operatingsystemrelease => 20
- }
+ @default_facts.merge(
+ { :osfamily => 'RedHat',
+ :operatingsystem => 'Fedora',
+ :operatingsystemrelease => 20
+ }
+ )
end
let :platform_params do
is_expected.to contain_ceilometer_config('keystone_authtoken/auth_uri').with_value( params[:keystone_protocol] + "://" + params[:keystone_host] + ":5000/" )
is_expected.to contain_ceilometer_config('api/host').with_value( params[:host] )
is_expected.to contain_ceilometer_config('api/port').with_value( params[:port] )
+ is_expected.to contain_ceilometer_config('DEFAULT/api_workers').with_value('<SERVICE DEFAULT>')
end
context 'when specifying keystone_auth_admin_prefix' do
context 'on Debian platforms' do
let :facts do
- { :osfamily => 'Debian',
- :operatingsystem => 'Debian',
- :operatingsystemrelease => '8.0',
- :concat_basedir => '/var/lib/puppet/concat',
- :fqdn => 'some.host.tld',
- :processorcount => 2 }
+ @default_facts.merge(
+ { :osfamily => 'Debian',
+ :operatingsystem => 'Debian',
+ :operatingsystemrelease => '8.0',
+ :concat_basedir => '/var/lib/puppet/concat',
+ :fqdn => 'some.host.tld',
+ :processorcount => 2 }
+ )
end
let :platform_params do
context 'on RedHat platforms' do
let :facts do
- { :osfamily => 'RedHat',
- :operatingsystem => 'RedHat',
- :operatingsystemrelease => '7.1',
- :fqdn => 'some.host.tld',
- :concat_basedir => '/var/lib/puppet/concat',
- :processorcount => 2 }
+ @default_facts.merge(
+ { :osfamily => 'RedHat',
+ :operatingsystem => 'RedHat',
+ :operatingsystemrelease => '7.1',
+ :fqdn => 'some.host.tld',
+ :concat_basedir => '/var/lib/puppet/concat',
+ :processorcount => 2 }
+ )
end
let :platform_params do
describe 'with custom auth_uri' do
let :facts do
- { :osfamily => 'RedHat' }
+ @default_facts.merge({ :osfamily => 'RedHat' })
end
before do
params.merge!({
describe "with custom keystone identity_uri" do
let :facts do
- { :osfamily => 'RedHat' }
+ @default_facts.merge({ :osfamily => 'RedHat' })
end
before do
params.merge!({
describe "with custom keystone identity_uri and auth_uri" do
let :facts do
- { :osfamily => 'RedHat' }
+ @default_facts.merge({ :osfamily => 'RedHat' })
end
before do
params.merge!({
it 'configures ceilometer-collector server' do
is_expected.to contain_ceilometer_config('collector/udp_address').with_value( '0.0.0.0' )
is_expected.to contain_ceilometer_config('collector/udp_port').with_value( '4952' )
+ is_expected.to contain_ceilometer_config('DEFAULT/collector_workers').with_value('<SERVICE DEFAULT>')
end
it 'installs ceilometer-collector package' do
context 'on Debian platforms' do
let :facts do
- { :osfamily => 'Debian' }
+ @default_facts.merge({ :osfamily => 'Debian' })
end
let :platform_params do
context 'on RedHat platforms' do
let :facts do
- { :osfamily => 'RedHat' }
+ @default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
RSpec.configure do |c|
c.alias_it_should_behave_like_to :it_configures, 'configures'
c.alias_it_should_behave_like_to :it_raises, 'raises'
+ c.before :each do
+ @default_facts = { :os_service_default => '<SERVICE DEFAULT>' }
+ end
end
at_exit { RSpec::Puppet::Coverage.report! }