Skip to content

Commit

Permalink
Allow multiple rings in nodelist and validate rrp_mode
Browse files Browse the repository at this point in the history
  • Loading branch information
rhamon committed Jun 21, 2016
1 parent bb34bf9 commit 34b1c6f
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 2 deletions.
10 changes: 10 additions & 0 deletions manifests/init.pp
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,8 @@
# [*quorum_members*]
# Array of quorum member hostname. This is required if set_votequorum
# is set to true.
# You can also have an array of arrays to have multiple rings. In that case,
# each subarray matches a member IP addresses.
# Defaults to ['localhost']
#
# [*quorum_members_ids*]
Expand Down Expand Up @@ -312,6 +314,14 @@
fail('You must provide a value for multicast_address')
}

# $rrp_mode value of 'none' isn't allowed with multiple rings
if ( is_array($multicast_address) and size($multicast_address) > 1 )
or ( is_array($unicast_addresses) and is_array($unicast_addresses[0]) and size($unicast_addresses[0]) > 1 )
or ( is_array($quorum_members) and is_array($quorum_members[0]) and size($quorum_members[0]) > 1 )
and $rrp_mode == 'none' {
fail('You must set rrp_mode to active or passive with multiple rings')
}

case $enable_secauth {
true: { $enable_secauth_real = 'on' }
false: { $enable_secauth_real = 'off' }
Expand Down
4 changes: 3 additions & 1 deletion templates/corosync.conf.erb
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,9 @@ quorum {
nodelist {
<% [@quorum_members].flatten.each_index do |i| -%>
node {
ring0_addr: <%= [@quorum_members].flatten[i] %>
<% Array(Array(@quorum_members.map{|node| Array(node).flatten})[i]).each_with_index do |addr,ring| -%>
ring<%= ring %>_addr: <%= addr %>
<% end -%>
<% if @quorum_members_ids.nil? -%>
nodeid: <%= i+1 %>
<% else -%>
Expand Down
4 changes: 3 additions & 1 deletion templates/corosync.conf.udpu.erb
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,9 @@ quorum {
nodelist {
<% [@quorum_members].flatten.each_index do |i| -%>
node {
ring0_addr: <%= [@quorum_members].flatten[i] %>
<% Array(Array(@quorum_members.map{|node| Array(node).flatten})[i]).each_with_index do |addr,ring| -%>
ring<%= ring %>_addr: <%= addr %>
<% end -%>
<% if @quorum_members_ids.nil? -%>
nodeid: <%= i+1 %>
<% else -%>
Expand Down

0 comments on commit 34b1c6f

Please sign in to comment.