Skip to content

Commit 01a4b9e

Browse files
committed
Fixes nil responses and more single quotes matches
1 parent 0667764 commit 01a4b9e

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

providers/cluster.rb

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,7 @@ def match_pattern_cluster_status(cluster_status, pattern)
6565
Chef::Application.fatal!('[rabbitmq_cluster] cluster_status should not be empty')
6666
end
6767
match = cluster_status.match(pattern)
68-
result = match && match[2]
69-
result
68+
match && match[2]
7069
end
7170

7271
# Get currently joined cluster name from result string of "rabbitmqctl cluster_status"
@@ -81,25 +80,26 @@ def current_cluster_name(cluster_status)
8180
def running_nodes(cluster_status)
8281
pattern = '({running_nodes,\[\'*)(.*?)(\'*\]})'
8382
match = match_pattern_cluster_status(cluster_status, pattern)
84-
result = match && match.split(',')
83+
result = match && match.gsub!(/'/, '').split(',')
8584
Chef::Log.debug("[rabbitmq_cluster] running_nodes : #{result}")
86-
result
8785
end
8886

8987
# Get disc nodes
9088
def disc_nodes(cluster_status)
9189
pattern = '({disc,\[\'*)(.*?)(\'*\]})'
92-
result = match_pattern_cluster_status(cluster_status, pattern)
90+
match = match_pattern_cluster_status(cluster_status, pattern)
91+
result = match && match.gsub!(/'/, '').split(',')
9392
Chef::Log.debug("[rabbitmq_cluster] disc_nodes : #{result}")
94-
result.split(',')
93+
!result.nil? ? result : []
9594
end
9695

9796
# Get ram nodes
9897
def ram_nodes(cluster_status)
9998
pattern = '({ram,\[\'*)(.*?)(\'*\]})'
100-
result = match_pattern_cluster_status(cluster_status, pattern)
99+
match = match_pattern_cluster_status(cluster_status, pattern)
100+
result = match && match.gsub!(/'/, '').split(',')
101101
Chef::Log.debug("[rabbitmq_cluster] ram_nodes : #{result}")
102-
result.split(',')
102+
!result.nil? ? result : []
103103
end
104104

105105
# Get node name
@@ -110,8 +110,7 @@ def node_name
110110
cmd = get_shellout(cmd)
111111
cmd.run_command
112112
cmd.error!
113-
result = cmd.stdout.chomp
114-
result.gsub!(/'/, '')
113+
result = cmd.stdout.chomp.gsub!(/'/, '')
115114
Chef::Log.debug("[rabbitmq_cluster] node name : #{result}")
116115
result
117116
end
@@ -124,6 +123,7 @@ def current_cluster_node_type(node_name, cluster_status)
124123
elsif ram_nodes(cluster_status).include?(node_name)
125124
var_cluster_node_type = 'ram'
126125
end
126+
Chef::Log.debug("[rabbitmq_cluster] current cluster node type : #{var_cluster_node_type}")
127127
var_cluster_node_type
128128
end
129129

@@ -234,7 +234,7 @@ def change_cluster_node_type(cluster_node_type)
234234
var_cluster_status = cluster_status
235235
var_node_name = node_name
236236
var_current_cluster_node_type = current_cluster_node_type(var_node_name, var_cluster_status)
237-
var_cluster_node_type = parse_cluster_nodes_string(new_resource.cluster_nodes).select { |node| node['name'] == var_node_name }.first['type'] # ~FC039
237+
var_cluster_node_type = parse_cluster_nodes_string(new_resource.cluster_nodes).each { |node| node['name'] == var_node_name }.first['type'] # ~FC039
238238

239239
if var_current_cluster_node_type == var_cluster_node_type
240240
Chef::Log.warn('[rabbitmq_cluster] Skip changing cluster node type : trying to change to same cluster node type')

0 commit comments

Comments
 (0)