Add executor_thread_pool_size

Change I36324bae39e05dde57b962948f832c22599c13d2 added
executor_thread_pool_size as a new param to oslo::messaging::default,
but that option was not updated in many modules like this one. This
means a user cannot set executor_thread_pool_size, as setting it
anywhere else will throw a duplicate declaration error.

This change update the oslo::messaging::default call accordingly, and
adds an option to set it, similar to Change
Id4a61c39ef6392a3d656952467c756be9e68de91

Change-Id: I446af549752cf4872b98e3320353bd93a8a9ab2f
This commit is contained in:
Jake Yip 2019-11-13 17:33:20 +11:00
parent c5807a735e
commit f289344487
3 changed files with 18 additions and 6 deletions

View File

@ -25,6 +25,10 @@
# (Optional) ensure state for package. # (Optional) ensure state for package.
# Defaults to 'present'. # Defaults to 'present'.
# #
# [*executor_thread_pool_size*]
# (optional) Size of executor thread pool when executor is threading or eventlet.
# Defaults to $::os_service_default.
#
# [*default_transport_url*] # [*default_transport_url*]
# (optional) A URL representing the messaging driver to use and its full # (optional) A URL representing the messaging driver to use and its full
# configuration. Transport URLs take the form: # configuration. Transport URLs take the form:
@ -221,6 +225,7 @@ class ceilometer(
$notification_topics = ['notifications'], $notification_topics = ['notifications'],
$notification_driver = $::os_service_default, $notification_driver = $::os_service_default,
$package_ensure = 'present', $package_ensure = 'present',
$executor_thread_pool_size = $::os_service_default,
$default_transport_url = $::os_service_default, $default_transport_url = $::os_service_default,
$rpc_response_timeout = $::os_service_default, $rpc_response_timeout = $::os_service_default,
$control_exchange = $::os_service_default, $control_exchange = $::os_service_default,
@ -345,9 +350,10 @@ class ceilometer(
} }
oslo::messaging::default { 'ceilometer_config': oslo::messaging::default { 'ceilometer_config':
transport_url => $default_transport_url, executor_thread_pool_size => $executor_thread_pool_size,
rpc_response_timeout => $rpc_response_timeout, transport_url => $default_transport_url,
control_exchange => $control_exchange, rpc_response_timeout => $rpc_response_timeout,
control_exchange => $control_exchange,
} }
oslo::cache { 'ceilometer_config': oslo::cache { 'ceilometer_config':

View File

@ -0,0 +1,3 @@
---
features:
- Add possibility to configure the size of executor thread pool.

View File

@ -105,6 +105,7 @@ describe 'ceilometer' do
end end
it 'configures default transport_url' do it 'configures default transport_url' do
is_expected.to contain_ceilometer_config('DEFAULT/executor_thread_pool_size').with_value('<SERVICE DEFAULT>')
is_expected.to contain_ceilometer_config('DEFAULT/transport_url').with_value('<SERVICE DEFAULT>') is_expected.to contain_ceilometer_config('DEFAULT/transport_url').with_value('<SERVICE DEFAULT>')
is_expected.to contain_ceilometer_config('DEFAULT/rpc_response_timeout').with_value('<SERVICE DEFAULT>') is_expected.to contain_ceilometer_config('DEFAULT/rpc_response_timeout').with_value('<SERVICE DEFAULT>')
is_expected.to contain_ceilometer_config('DEFAULT/control_exchange').with_value('<SERVICE DEFAULT>') is_expected.to contain_ceilometer_config('DEFAULT/control_exchange').with_value('<SERVICE DEFAULT>')
@ -133,13 +134,15 @@ describe 'ceilometer' do
context 'with overridden transport_url parameter' do context 'with overridden transport_url parameter' do
before { before {
params.merge!( params.merge!(
:default_transport_url => 'rabbit://rabbit_user:password@localhost:5673', :executor_thread_pool_size => '128',
:rpc_response_timeout => '120', :default_transport_url => 'rabbit://rabbit_user:password@localhost:5673',
:control_exchange => 'ceilometer', :rpc_response_timeout => '120',
:control_exchange => 'ceilometer',
) )
} }
it 'configures transport_url' do it 'configures transport_url' do
is_expected.to contain_ceilometer_config('DEFAULT/executor_thread_pool_size').with_value('128')
is_expected.to contain_ceilometer_config('DEFAULT/transport_url').with_value('rabbit://rabbit_user:password@localhost:5673') is_expected.to contain_ceilometer_config('DEFAULT/transport_url').with_value('rabbit://rabbit_user:password@localhost:5673')
is_expected.to contain_ceilometer_config('DEFAULT/rpc_response_timeout').with_value('120') is_expected.to contain_ceilometer_config('DEFAULT/rpc_response_timeout').with_value('120')
is_expected.to contain_ceilometer_config('DEFAULT/control_exchange').with_value('ceilometer') is_expected.to contain_ceilometer_config('DEFAULT/control_exchange').with_value('ceilometer')