diff --git a/REFERENCE.md b/REFERENCE.md index b89bb021..f9538405 100644 --- a/REFERENCE.md +++ b/REFERENCE.md @@ -15,6 +15,7 @@ _Private Classes_ * `redis::config`: This class provides configuration for Redis. * `redis::install`: This class installs the application. +* `redis::instances` : This class manages multiple instances. * `redis::params`: This class provides a number of parameters. * `redis::preinstall`: Provides anything required by the install class, such as package repositories. diff --git a/manifests/init.pp b/manifests/init.pp index 4c95870a..6de22b22 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -153,6 +153,7 @@ # @param [Integer] cluster_migration_barrier Minimum number of slaves master will remain connected with, for another slave to migrate to a master which is no longer covered by any slave # Only set if cluster_enabled is true # Default: 1 +# @param [Hash] instances Iterate through multiple instance configurations class redis ( $activerehashing = $redis::params::activerehashing, $aof_load_truncated = $redis::params::aof_load_truncated, @@ -252,7 +253,8 @@ $cluster_node_timeout = $redis::params::cluster_node_timeout, Integer[0] $cluster_slave_validity_factor = $redis::params::cluster_slave_validity_factor, Boolean $cluster_require_full_coverage = $redis::params::cluster_require_full_coverage, - Integer[0] $cluster_migration_barrier = $redis::params::cluster_migration_barrier + Integer[0] $cluster_migration_barrier = $redis::params::cluster_migration_barrier, + Hash[String[1], Hash] $instances = {}, ) inherits redis::params { contain redis::preinstall @@ -260,6 +262,12 @@ contain redis::config contain redis::service + $instances.each | String $key, Hash $values | { + redis::instance { $key: + * => $values, + } + } + Class['redis::preinstall'] -> Class['redis::install'] -> Class['redis::config']