cache: Support new redis options

The oslo.cache 3.7.0 release introduced some options for redis backend
and redis sentinel backend. This introduces for these parameters.

Depneds-on: https://review.opendev.org/910629
Change-Id: Ia947c684f5f4cc10efad487d7c87e06c73cc1ba2
This commit is contained in:
Takashi Kajinami 2024-03-07 22:58:03 +09:00
parent 20baac53ab
commit 1dd45677b6
3 changed files with 66 additions and 0 deletions

View File

@ -120,6 +120,30 @@
# (Optional) The password for the memcached with SASL enabled
# Defaults to $facts['os_service_default']
#
# [*redis_server*]
# (Optional) Redis server in the format of "host:port".
# Defaults to $facts['os_service_default']
#
# [*redis_username*]
# (Optional) The user name for redis
# Defaults to $facts['os_service_default']
#
# [*redis_password*]
# (Optional) The password for redis
# Defaults to $facts['os_service_default']
#
# [*redis_sentinels*]
# (Optional) Redis sentinel servers in the format of host:port
# Defaults to $facts['os_service_default']
#
# [*redis_socket_timeout*]
# (Optional) Timeout in seconds for every call to a server
# Defaults to $facts['os_service_default']
#
# [*redis_sentinel_service_name*]
# (Optional) Service name of the redis sentinel cluster.
# Defaults to $facts['os_service_default']
#
# [*constraint_validation_caching*]
# (Optional) Enable caching in constraint validation. Global caching should
# be also enabled to enable this.
@ -237,6 +261,12 @@ class heat::cache (
$memcache_sasl_enabled = $facts['os_service_default'],
$memcache_username = $facts['os_service_default'],
$memcache_password = $facts['os_service_default'],
$redis_server = $facts['os_service_default'],
$redis_username = $facts['os_service_default'],
$redis_password = $facts['os_service_default'],
$redis_sentinels = $facts['os_service_default'],
$redis_socket_timeout = $facts['os_service_default'],
$redis_sentinel_service_name = $facts['os_service_default'],
$constraint_validation_caching = $facts['os_service_default'],
$constraint_validation_expiration_time = $facts['os_service_default'],
$service_extension_caching = $facts['os_service_default'],
@ -281,6 +311,12 @@ class heat::cache (
memcache_sasl_enabled => $memcache_sasl_enabled,
memcache_username => $memcache_username,
memcache_password => $memcache_password,
redis_server => $redis_server,
redis_username => $redis_username,
redis_password => $redis_password,
redis_sentinels => $redis_sentinels,
redis_socket_timeout => $redis_socket_timeout,
redis_sentinel_service_name => $redis_sentinel_service_name,
tls_enabled => $tls_enabled,
tls_cafile => $tls_cafile,
tls_certfile => $tls_certfile,

View File

@ -0,0 +1,12 @@
---
features:
- |
The ``heat::cache`` class now supports the following new options for
Redis backend and Redis Sentinel backend.
- ``redis_server``
- ``redis_username``
- ``redis_password``
- ``redis_sentinels``
- ``redis_socket_timeout``
- ``redis_sentinel_service_name``

View File

@ -32,6 +32,12 @@ describe 'heat::cache' do
:memcache_sasl_enabled => '<SERVICE DEFAULT>',
:memcache_username => '<SERVICE DEFAULT>',
:memcache_password => '<SERVICE DEFAULT>',
:redis_server => '<SERVICE DEFAULT>',
:redis_username => '<SERVICE DEFAULT>',
:redis_password => '<SERVICE DEFAULT>',
:redis_sentinels => '<SERVICE DEFAULT>',
:redis_socket_timeout => '<SERVICE DEFAULT>',
:redis_sentinel_service_name => '<SERVICE DEFAULT>',
:tls_enabled => '<SERVICE DEFAULT>',
:tls_cafile => '<SERVICE DEFAULT>',
:tls_certfile => '<SERVICE DEFAULT>',
@ -77,6 +83,12 @@ describe 'heat::cache' do
:memcache_sasl_enabled => false,
:memcache_username => 'sasluser',
:memcache_password => 'saslpass',
:redis_server => 'localhost:6379',
:redis_username => 'redisuser',
:redis_password => 'redispass',
:redis_sentinels => ['host1:26379', 'host2:26379'],
:redis_socket_timeout => 1.0,
:redis_sentinel_service_name => 'mymaster',
:tls_enabled => false,
:enable_retry_client => false,
:retry_attempts => 2,
@ -117,6 +129,12 @@ describe 'heat::cache' do
:memcache_sasl_enabled => false,
:memcache_username => 'sasluser',
:memcache_password => 'saslpass',
:redis_server => 'localhost:6379',
:redis_username => 'redisuser',
:redis_password => 'redispass',
:redis_sentinels => ['host1:26379', 'host2:26379'],
:redis_socket_timeout => 1.0,
:redis_sentinel_service_name => 'mymaster',
:tls_enabled => false,
:tls_cafile => '<SERVICE DEFAULT>',
:tls_certfile => '<SERVICE DEFAULT>',