sidekiq-heroku-scaler 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cd6555ed85d38c9ae7d8aa23b933b7da839ad5c13bfa9717b010eb807a9628e4
4
- data.tar.gz: 1f17a01f45c5903ec90be77932e94d1cd2e944cd24639ecccfe7d8500ddf94ee
3
+ metadata.gz: e96a4d236233c4c023ec0fd4375f38428a2c175557daab51456bc178655f5195
4
+ data.tar.gz: 16d0d026cdcad165f8dbfe230b8b752174ed355f22bfa55841dd84ff06afbde0
5
5
  SHA512:
6
- metadata.gz: 7e37e11e9aa1f87b548c93f2ee1f047e399c7ce434ed1fe30c66c92c0023a34331578dfab80395105eae758ed40a6a508d394989428686a57fae9aee57d39d3b
7
- data.tar.gz: 0aa1fdd33ab3f533a6072c98e9d654661b53effcf68315315f5a0e345729cd67eb6ab8150671e5513bba8410b5ba0a0c105b5e6535c9c3eaadacdb749eb1d9e8
6
+ metadata.gz: a2c8aa05f4f1529ba68c5605f235a19af8aea0bf6627e72cdbeb7a18d7508063ee32761d73f1ef399c876398d8b210f031027ebc3229c8a72039308188c48d12
7
+ data.tar.gz: 19ca696abe6e260cac533ab1c6bd249739114cf3e7cba11b332f8baa3370ec1a20831ccd1f84ebe21d6f4bdf38acd39e5beee681dacee0f74cb5a5e127139c31
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sidekiq-heroku-scaler (0.1.0)
4
+ sidekiq-heroku-scaler (0.1.3)
5
5
  platform-api (~> 2.2)
6
6
  sidekiq (~> 5.2)
7
7
 
@@ -12,7 +12,7 @@ GEM
12
12
  connection_pool (2.2.2)
13
13
  diff-lcs (1.3)
14
14
  erubis (2.7.0)
15
- excon (0.62.0)
15
+ excon (0.73.0)
16
16
  heroics (0.0.25)
17
17
  erubis (~> 2.0)
18
18
  excon
@@ -20,7 +20,7 @@ GEM
20
20
  multi_json (>= 1.9.2)
21
21
  jaro_winkler (1.5.1)
22
22
  moneta (1.0.0)
23
- multi_json (1.13.1)
23
+ multi_json (1.14.1)
24
24
  parallel (1.12.1)
25
25
  parser (2.5.3.0)
26
26
  ast (~> 2.4.0)
@@ -28,12 +28,12 @@ GEM
28
28
  heroics (~> 0.0.25)
29
29
  moneta (~> 1.0.0)
30
30
  powerpack (0.1.2)
31
- rack (2.0.6)
32
- rack-protection (2.0.5)
31
+ rack (2.0.9)
32
+ rack-protection (2.0.8.1)
33
33
  rack
34
34
  rainbow (3.0.0)
35
35
  rake (12.3.2)
36
- redis (4.1.0)
36
+ redis (4.1.3)
37
37
  rspec (3.8.0)
38
38
  rspec-core (~> 3.8.0)
39
39
  rspec-expectations (~> 3.8.0)
@@ -56,8 +56,9 @@ GEM
56
56
  ruby-progressbar (~> 1.7)
57
57
  unicode-display_width (~> 1.4.0)
58
58
  ruby-progressbar (1.10.0)
59
- sidekiq (5.2.3)
59
+ sidekiq (5.2.8)
60
60
  connection_pool (~> 2.2, >= 2.2.2)
61
+ rack (< 2.1.0)
61
62
  rack-protection (>= 1.5.0)
62
63
  redis (>= 3.3.5, < 5)
63
64
  unicode-display_width (1.4.1)
@@ -30,9 +30,11 @@ module SidekiqHerokuScaler
30
30
 
31
31
  def process_formation(sidekiq_worker)
32
32
  if strategy.increase?(sidekiq_worker)
33
- heroku_client.update_formation(sidekiq_worker.formation_id, sidekiq_worker.quantity + strategy.inc_count)
33
+ heroku_client.update_formation(sidekiq_worker.formation_id,
34
+ strategy.safe_quantity(sidekiq_worker.quantity + strategy.inc_count))
34
35
  elsif strategy.decrease?(sidekiq_worker)
35
- heroku_client.update_formation(sidekiq_worker.formation_id, sidekiq_worker.quantity - strategy.dec_count)
36
+ heroku_client.update_formation(sidekiq_worker.formation_id,
37
+ strategy.safe_quantity(sidekiq_worker.quantity - strategy.dec_count))
36
38
  end
37
39
  end
38
40
 
@@ -26,6 +26,12 @@ module SidekiqHerokuScaler
26
26
  sidekiq_worker.latency < min_latency && sidekiq_worker.quantity > min_dynos_count
27
27
  end
28
28
 
29
+ def safe_quantity(quantity)
30
+ return 1 if quantity <= 0
31
+
32
+ quantity > max_dynos_count ? max_dynos_count : quantity
33
+ end
34
+
29
35
  private
30
36
 
31
37
  attr_reader :min_dynos_count, :max_dynos_count, :max_latency, :min_latency
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SidekiqHerokuScaler
4
- VERSION = '0.1.3'
4
+ VERSION = '0.1.4'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-heroku-scaler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vital Ryabchinskiy
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-07 00:00:00.000000000 Z
11
+ date: 2020-04-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler