Skip to content

Commit c442d00

Browse files
authored
Merge pull request #950 from jimmybigcommerce/initial_cluster_size_patch
Treat `initial-cluster-size` option in policy as an integer
2 parents fbf96ce + ee1e930 commit c442d00

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

lib/puppet/type/rabbitmq_policy.rb

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,10 +120,14 @@ def validate_definition(definition)
120120
ha_sync_batch_size_val = definition['ha-sync-batch-size']
121121
raise ArgumentError, "Invalid ha-sync-batch-size value '#{ha_sync_batch_size_val}'" unless ha_sync_batch_size_val.to_i.to_s == ha_sync_batch_size_val
122122
end
123-
if definition.key? 'delivery-limit' # rubocop:disable Style/GuardClause
123+
if definition.key? 'delivery-limit'
124124
delivery_limit_val = definition['delivery-limit']
125125
raise ArgumentError, "Invalid delivery-limit value '#{delivery_limit_val}'" unless delivery_limit_val.to_i.to_s == delivery_limit_val
126126
end
127+
if definition.key? 'initial-cluster-size' # rubocop:disable Style/GuardClause
128+
initial_cluster_size_val = definition['initial-cluster-size']
129+
raise ArgumentError, "Invalid initial-cluster-size value '#{initial_cluster_size_val}'" unless initial_cluster_size_val.to_i.to_s == initial_cluster_size_val
130+
end
127131
end
128132

129133
def munge_definition(definition)
@@ -135,6 +139,7 @@ def munge_definition(definition)
135139
definition['shards-per-node'] = definition['shards-per-node'].to_i if definition.key? 'shards-per-node'
136140
definition['ha-sync-batch-size'] = definition['ha-sync-batch-size'].to_i if definition.key? 'ha-sync-batch-size'
137141
definition['delivery-limit'] = definition['delivery-limit'].to_i if definition.key? 'delivery-limit'
142+
definition['initial-cluster-size'] = definition['initial-cluster-size'].to_i if definition.key? 'initial-cluster-size'
138143
definition
139144
end
140145
end

spec/unit/puppet/type/rabbitmq_policy_spec.rb

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,19 @@
195195
end.to raise_error(Puppet::Error, %r{Invalid delivery-limit value.*future})
196196
end
197197

198+
it 'accepts and converts the initial-cluster-size value' do
199+
definition = { 'initial-cluster-size' => '3' }
200+
policy[:definition] = definition
201+
expect(policy[:definition]['initial-cluster-size']).to eq(3)
202+
end
203+
204+
it 'does not accept non-numeric initial-cluster-size value' do
205+
definition = { 'initial-cluster-size' => 'impressive' }
206+
expect do
207+
policy[:definition] = definition
208+
end.to raise_error(Puppet::Error, %r{Invalid initial-cluster-size value 'impressive})
209+
end
210+
198211
context 'accepts list value in ha-params when ha-mode = nodes' do
199212
before do
200213
policy[:definition] = definition

0 commit comments

Comments
 (0)