Introduce the new rabbit_heartbeat_in_pthread option

oslo.messaging RabbitMQ driver have now a new option that allow user to
run the RabbitMQ heartbeat over a native python thread.

These change allow user to use this new option.

Change-Id: Ibed69e1116543709fd0f51778b93c86bed571dcd
Closes-Bug: #1840868
This commit is contained in:
ZhongShengping 2019-08-21 14:21:01 +08:00
parent 1f6f2d4d45
commit d69a4f20a7
3 changed files with 21 additions and 0 deletions

View File

@ -210,6 +210,16 @@
# not necessarily a host name, FQDN, or IP address.
# Defaults to $::os_service_default
#
# [*rabbit_heartbeat_in_pthread*]
# (Optional) EXPERIMENTAL: Run the health check heartbeat thread
# through a native python thread. By default if this
# option isn't provided the health check heartbeat will
# inherit the execution model from the parent process. By
# example if the parent process have monkey patched the
# stdlib by using eventlet/greenlet then the heartbeat
# will be run through a green thread.
# Defaults to $::os_service_default
#
class manila (
$sql_connection = undef,
$sql_idle_timeout = undef,
@ -232,6 +242,7 @@ class manila (
$kombu_ssl_version = $::os_service_default,
$kombu_failover_strategy = $::os_service_default,
$amqp_durable_queues = $::os_service_default,
$rabbit_heartbeat_in_pthread = $::os_service_default,
$package_ensure = 'present',
$use_ssl = false,
$ca_file = false,
@ -295,6 +306,7 @@ class manila (
kombu_ssl_keyfile => $kombu_ssl_keyfile,
kombu_ssl_version => $kombu_ssl_version,
kombu_failover_strategy => $kombu_failover_strategy,
heartbeat_in_pthread => $rabbit_heartbeat_in_pthread,
}
oslo::messaging::amqp { 'manila_config':

View File

@ -0,0 +1,6 @@
---
features:
- |
Allow users to run the RabbitMQ heartbeat over a native python thread in the
oslo.messaging RabbitMQ driver, by using the `rabbit_heartbeat_in_pthread`
option in configuration.

View File

@ -49,6 +49,9 @@ describe 'manila' do
is_expected.to contain_manila_config('oslo_messaging_rabbit/kombu_failover_strategy').with(
:value => '<SERVICE DEFAULT>'
)
is_expected.to contain_manila_config('oslo_messaging_rabbit/heartbeat_in_pthread').with(
:value => '<SERVICE DEFAULT>'
)
is_expected.to contain_manila_config('DEFAULT/storage_availability_zone').with(
:value => 'nova'
)