aggkit 0.4.8.19389 → 0.4.8.19621

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/bin/aggwrap +45 -20
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e05fab4034523d27a1f4f391ba270cc7ae32ab4b03f0ec3ef0bb5cda97aa9fb
4
- data.tar.gz: 0dcadea42472126b0ae32c3a59a8f06bb03f02e13d9a5583b7f72efeb6e091de
3
+ metadata.gz: 62b21d86611dd16abace3fc55548ed8e0de34bd5bb68b3e2f4bbc10bbcb8b610
4
+ data.tar.gz: ac83f17317ab2b62ac0650574de2bda400e7caef97c4c5ccbac38ad40208be0b
5
5
  SHA512:
6
- metadata.gz: 5f0b421bc88b03ba308478bcb254bedeca5e05dec63cfaac6b0c0639ebc02ec83bf65137270099ca7f01adc1ddc9c92b841cc833ec30a4943faa331246b13ef9
7
- data.tar.gz: 23d995a369826fe9dcc05a94eb32eeb437cebc9597d2af176df15693dab6211bde50f5d98c17e5660355322846e75419172d6e8dd6974907a94fda855ecedb1f
6
+ metadata.gz: 9598e7efb861be2ac6883910d2bd1189b3d106be6102050d5a6c4fd65a18d49cf8fb14866d28c9aee9bf712002c11de3706defdaf42ca845722174a1b43f0c39
7
+ data.tar.gz: e9f5d35d0548fb1715c7f9ec70aa042db12463ff193407c3cfa94c4f3191d4ca80371744b15fa5436550c2ca94110546e27c699aeca0288949fd2a98ae61f044
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- aggkit (0.4.8.19389)
4
+ aggkit (0.4.8.19621)
5
5
  diplomat
6
6
  dotenv
7
7
  json
data/bin/aggwrap CHANGED
@@ -234,38 +234,63 @@ end
234
234
 
235
235
  Thread.abort_on_exception = true
236
236
 
237
+ def with_retry(count = 2)
238
+ begin
239
+ retries ||= 0
240
+ yield
241
+ rescue StandardError
242
+ if (retries += 1) < count
243
+ STDERR.puts "Retry #{retries}..."
244
+ retry
245
+ else
246
+ raise
247
+ end
248
+ end
249
+ end
250
+
251
+ def ensure_service_registered
252
+ with_retry(3) do
253
+ STDERR.puts "Ensure service #{@service} registered..."
254
+ raise "Registration failed by Diplomat" unless Diplomat::Service.register(@service, timeout: 10)
255
+ yield
256
+ end
257
+ rescue => e
258
+ die("Can't register service #{@service} in consul: #{e}")
259
+ end
260
+
237
261
  Thread.new do
238
262
  loop do
239
- die("Can't register service #{@service} in consul") unless Diplomat::Service.register(@service, timeout: 10)
240
- run_check(@checks[:exec]) do |check_id|
241
- make_ttl_pass(check_id)
242
- end
263
+ ensure_service_registered do
264
+ run_check(@checks[:exec]) do |check_id|
265
+ make_ttl_pass(check_id)
266
+ end
243
267
 
244
- if @checks[:http]
245
- run_check(@checks[:http]) do |check_id|
246
- check_http(check_id, @opts[:http])
268
+ if @checks[:http]
269
+ run_check(@checks[:http]) do |check_id|
270
+ check_http(check_id, @opts[:http])
271
+ end
247
272
  end
248
- end
249
273
 
250
- if @checks[:file]
251
- run_check(@checks[:file]) do |check_id|
252
- check_file(check_id, @opts[:file])
274
+ if @checks[:file]
275
+ run_check(@checks[:file]) do |check_id|
276
+ check_file(check_id, @opts[:file])
277
+ end
253
278
  end
254
- end
255
279
 
256
- if @checks[:pidfile]
257
- run_check(@checks[:pidfile]) do |check_id|
258
- check_pidfile(check_id, @opts[:pidfile])
280
+ if @checks[:pidfile]
281
+ run_check(@checks[:pidfile]) do |check_id|
282
+ check_pidfile(check_id, @opts[:pidfile])
283
+ end
259
284
  end
260
- end
261
285
 
262
- if @checks[:script]
263
- run_check(@checks[:script]) do |check_id|
264
- check_script(check_id, @opts[:script])
286
+ if @checks[:script]
287
+ run_check(@checks[:script]) do |check_id|
288
+ check_script(check_id, @opts[:script])
289
+ end
265
290
  end
266
291
  end
267
292
 
268
- sleep rand(10..19)
293
+ sleep rand(10..29)
269
294
  end
270
295
  end
271
296
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aggkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.8.19389
4
+ version: 0.4.8.19621
5
5
  platform: ruby
6
6
  authors:
7
7
  - Godko Ivan
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-11-19 00:00:00.000000000 Z
12
+ date: 2019-11-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: diplomat