diff --git a/manifests/cache.pp b/manifests/cache.pp index 23e9eeb..bcfe7b1 100644 --- a/manifests/cache.pp +++ b/manifests/cache.pp @@ -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'] +# # [*tls_enabled*] # (Optional) Global toggle for TLS usage when comunicating with # the caching servers. @@ -210,6 +234,12 @@ class watcher::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'], $tls_enabled = $facts['os_service_default'], $tls_cafile = $facts['os_service_default'], $tls_certfile = $facts['os_service_default'], @@ -248,6 +278,12 @@ class watcher::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, diff --git a/releasenotes/notes/cache-redis-opts-38d736d94ef2b6e1.yaml b/releasenotes/notes/cache-redis-opts-38d736d94ef2b6e1.yaml new file mode 100644 index 0000000..a0c77a8 --- /dev/null +++ b/releasenotes/notes/cache-redis-opts-38d736d94ef2b6e1.yaml @@ -0,0 +1,12 @@ +--- +features: + - | + The ``watcher::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`` diff --git a/spec/classes/watcher_cache_spec.rb b/spec/classes/watcher_cache_spec.rb index ac7650e..87a8700 100644 --- a/spec/classes/watcher_cache_spec.rb +++ b/spec/classes/watcher_cache_spec.rb @@ -32,6 +32,12 @@ describe 'watcher::cache' do :memcache_sasl_enabled => '', :memcache_username => '', :memcache_password => '', + :redis_server => '', + :redis_username => '', + :redis_password => '', + :redis_sentinels => '', + :redis_socket_timeout => '', + :redis_sentinel_service_name => '', :tls_enabled => '', :tls_cafile => '', :tls_certfile => '', @@ -70,6 +76,12 @@ describe 'watcher::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, @@ -104,6 +116,12 @@ describe 'watcher::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 => '', :tls_certfile => '',