Showing with 851 additions and 317 deletions.
  1. +3 −0 .travis.yml
  2. +1 −0 Gemfile
  3. +1 −1 README.md
  4. +70 −47 manifests/config.pp
  5. +173 −72 manifests/init.pp
  6. +82 −64 manifests/params.pp
  7. +2 −2 manifests/preinstall.pp
  8. +31 −25 manifests/sentinel.pp
  9. +1 −1 metadata.json
  10. +8 −6 spec/classes/redis_sentinel_spec.rb
  11. +278 −80 spec/classes/redis_spec.rb
  12. +3 −0 templates/redis-sentinel.conf.erb
  13. +198 −19 templates/redis.conf.erb
3 changes: 3 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,6 @@ env:
- PUPPET_VERSION="4.0"
- PUPPET_VERSION="4.1"
- PUPPET_VERSION="4.2"
- PUPPET_VERSION="4.3"
- PUPPET_VERSION="4.4"
- PUPPET_VERSION="4.5"
1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,5 @@ gem 'rspec-puppet', '>=0.1.6'
gem 'puppetlabs_spec_helper', '>=0.4.1'

gem 'beaker-rspec'
gem 'bundler'
gem 'vagrant-wrapper'
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

### Standalone

class { 'redis':;
class { 'redis':
}

### Master node
Expand Down
117 changes: 70 additions & 47 deletions manifests/config.pp
Original file line number Diff line number Diff line change
Expand Up @@ -3,52 +3,68 @@
# This class provides configuration for Redis.
#
class redis::config {
$activerehashing = $::redis::activerehashing
$appendfsync = $::redis::appendfsync
$appendonly = $::redis::appendonly
$auto_aof_rewrite_min_size = $::redis::auto_aof_rewrite_min_size
$auto_aof_rewrite_percentage = $::redis::auto_aof_rewrite_percentage
$bind = $::redis::bind
$cluster_config_file = $::redis::cluster_config_file
$cluster_enabled = $::redis::cluster_enabled
$cluster_node_timeout = $::redis::cluster_node_timeout
$daemonize = $::redis::daemonize
$databases = $::redis::databases
$dbfilename = $::redis::dbfilename
$extra_config_file = $::redis::extra_config_file
$hash_max_ziplist_entries = $::redis::hash_max_ziplist_entries
$hash_max_ziplist_value = $::redis::hash_max_ziplist_value
$hz = $::redis::hz
$list_max_ziplist_entries = $::redis::list_max_ziplist_entries
$list_max_ziplist_value = $::redis::list_max_ziplist_value
$log_file = $::redis::log_file
$log_level = $::redis::log_level
$masterauth = $::redis::masterauth
$maxclients = $::redis::maxclients
$maxmemory = $::redis::maxmemory
$maxmemory_policy = $::redis::maxmemory_policy
$maxmemory_samples = $::redis::maxmemory_samples
$no_appendfsync_on_rewrite = $::redis::no_appendfsync_on_rewrite
$pid_file = $::redis::pid_file
$port = $::redis::port
$rdbcompression = $::redis::rdbcompression
$repl_timeout = $::redis::repl_timeout
$requirepass = $::redis::requirepass
$save_db_to_disk = $::redis::save_db_to_disk
$set_max_intset_entries = $::redis::set_max_intset_entries
$slave_read_only = $::redis::slave_read_only
$slave_serve_stale_data = $::redis::slave_serve_stale_data
$slaveof = $::redis::slaveof
$slowlog_log_slower_than = $::redis::slowlog_log_slower_than
$slowlog_max_len = $::redis::slowlog_max_len
$stop_writes_on_bgsave_error = $::redis::stop_writes_on_bgsave_error
$syslog_enabled = $::redis::syslog_enabled
$syslog_facility = $::redis::syslog_facility
$tcp_keepalive = $::redis::tcp_keepalive
$timeout = $::redis::timeout
$workdir = $::redis::workdir
$zset_max_ziplist_entries = $::redis::zset_max_ziplist_entries
$zset_max_ziplist_value = $::redis::zset_max_ziplist_value
$activerehashing = $::redis::activerehashing
$aof_load_truncated = $::redis::aof_load_truncated
$aof_rewrite_incremental_fsync = $::redis::aof_rewrite_incremental_fsync
$appendfilename = $::redis::appendfilename
$appendfsync = $::redis::appendfsync
$appendonly = $::redis::appendonly
$auto_aof_rewrite_min_size = $::redis::auto_aof_rewrite_min_size
$auto_aof_rewrite_percentage = $::redis::auto_aof_rewrite_percentage
$bind = $::redis::bind
$cluster_config_file = $::redis::cluster_config_file
$cluster_enabled = $::redis::cluster_enabled
$cluster_node_timeout = $::redis::cluster_node_timeout
$daemonize = $::redis::daemonize
$databases = $::redis::databases
$dbfilename = $::redis::dbfilename
$extra_config_file = $::redis::extra_config_file
$hash_max_ziplist_entries = $::redis::hash_max_ziplist_entries
$hash_max_ziplist_value = $::redis::hash_max_ziplist_value
$hll_sparse_max_bytes = $::redis::hll_sparse_max_bytes
$hz = $::redis::hz
$latency_monitor_threshold = $::redis::latency_monitor_threshold
$list_max_ziplist_entries = $::redis::list_max_ziplist_entries
$list_max_ziplist_value = $::redis::list_max_ziplist_value
$log_file = $::redis::log_file
$log_level = $::redis::log_level
$masterauth = $::redis::masterauth
$maxclients = $::redis::maxclients
$maxmemory = $::redis::maxmemory
$maxmemory_policy = $::redis::maxmemory_policy
$maxmemory_samples = $::redis::maxmemory_samples
$min_slaves_max_lag = $::redis::min_slaves_max_lag
$min_slaves_to_write = $::redis::min_slaves_to_write
$no_appendfsync_on_rewrite = $::redis::no_appendfsync_on_rewrite
$notify_keyspace_events = $::redis::notify_keyspace_events
$pid_file = $::redis::pid_file
$port = $::redis::port
$rdbcompression = $::redis::rdbcompression
$repl_backlog_size = $::redis::repl_backlog_size
$repl_backlog_ttl = $::redis::repl_backlog_ttl
$repl_disable_tcp_nodelay = $::redis::repl_disable_tcp_nodelay
$repl_ping_slave_period = $::redis::repl_ping_slave_period
$repl_timeout = $::redis::repl_timeout
$requirepass = $::redis::requirepass
$save_db_to_disk = $::redis::save_db_to_disk
$set_max_intset_entries = $::redis::set_max_intset_entries
$slave_priority = $::redis::slave_priority
$slave_read_only = $::redis::slave_read_only
$slave_serve_stale_data = $::redis::slave_serve_stale_data
$slaveof = $::redis::slaveof
$slowlog_log_slower_than = $::redis::slowlog_log_slower_than
$slowlog_max_len = $::redis::slowlog_max_len
$stop_writes_on_bgsave_error = $::redis::stop_writes_on_bgsave_error
$syslog_enabled = $::redis::syslog_enabled
$syslog_facility = $::redis::syslog_facility
$tcp_backlog = $::redis::tcp_backlog
$tcp_keepalive = $::redis::tcp_keepalive
$timeout = $::redis::timeout
$unixsocket = $::redis::unixsocket
$unixsocketperm = $::redis::unixsocketperm
$workdir = $::redis::workdir
$zset_max_ziplist_entries = $::redis::zset_max_ziplist_entries
$zset_max_ziplist_value = $::redis::zset_max_ziplist_value

if $::redis::notify_service {
File {
Expand All @@ -70,7 +86,7 @@
ensure => directory,
mode => $::redis::config_dir_mode;

$::redis::config_file:
$::redis::config_file_orig:
ensure => present,
content => template($::redis::conf_template);

Expand All @@ -81,6 +97,13 @@
owner => $::redis::service_user;
}

exec {
"cp -p ${::redis::config_file_orig} ${::redis::config_file}":
path => '/usr/bin:/bin',
subscribe => File[$::redis::config_file_orig],
refreshonly => true;
} ~> Service <| title == $::redis::service_name |>

# Adjust /etc/default/redis-server on Debian systems
case $::osfamily {
'Debian': {
Expand Down
Loading