heroku-resque-workers-scaler 0.2.0 → 0.2.1

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
  SHA1:
3
- metadata.gz: 13c53ba1d25943cf147a88cad016bd1f27533322
4
- data.tar.gz: 1614140657d92c11e5a0fc4b65fb3d2c27013cfd
3
+ metadata.gz: b8dc50d2ecf4710e742e167c733230ed00e3bcae
4
+ data.tar.gz: 7556b47f8cf4039e8a864b86397bd46e0690b20b
5
5
  SHA512:
6
- metadata.gz: 2d710e9001c4caa3e3837433339a6660a9a1c2e285768701d40f655d8eb160a68a8f09edbce58f816adf1f38ccae4579f8ca5945c7d37e8feef823337a236100
7
- data.tar.gz: e801d73f45408acfb158e5a7ff4871a73338881d70a28e06aed35c436cff72ef4c0601bf2d45cfa4679067cf331d6044f23c0692ee100a0cb8d8958316eb3321
6
+ metadata.gz: c1e449b8d91ae50b69d2e839b84535fe4bdde196196277b873ffe409a6e3e7361e9cb343c947b7c6f9e486d180b97d4c85ea45201cec93eb733f0e51d2d922fd
7
+ data.tar.gz: fca194c6dd9d4b8dc1e57c717602c06f4c7f179a73c1589dca8fd643c6a4e6916cab266e97696f54428a7608061d34c7829058fbf8f303dacdd68b0706a5503e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # Changelog VERSION = '0.2.1'
2
+
3
+ [Fullcahnges](https://github.com/joel/heroku-resque-workers-scaler/pull/7)
4
+
1
5
  # Changelog VERSION = '0.2.0'
2
6
 
3
7
  [Fullcahnges](https://github.com/joel/heroku-resque-workers-scaler/pull/6)
data/Gemfile CHANGED
@@ -2,3 +2,7 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in heroku-resque-workers-scaler.gemspec
4
4
  gemspec
5
+
6
+ group :test do
7
+ gem 'pry'
8
+ end
data/Gemfile.lock CHANGED
@@ -1,42 +1,15 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- heroku-resque-workers-scaler (0.1.9)
5
- platform-api
6
- resque
4
+ heroku-resque-workers-scaler (0.2.1)
5
+ platform-api (~> 0.2.0)
6
+ resque (~> 1.25.2)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- actionmailer (4.1.1)
12
- actionpack (= 4.1.1)
13
- actionview (= 4.1.1)
14
- mail (~> 2.5.4)
15
- actionpack (4.1.1)
16
- actionview (= 4.1.1)
17
- activesupport (= 4.1.1)
18
- rack (~> 1.5.2)
19
- rack-test (~> 0.6.2)
20
- actionview (4.1.1)
21
- activesupport (= 4.1.1)
22
- builder (~> 3.1)
23
- erubis (~> 2.7.0)
24
- activemodel (4.1.1)
25
- activesupport (= 4.1.1)
26
- builder (~> 3.1)
27
- activerecord (4.1.1)
28
- activemodel (= 4.1.1)
29
- activesupport (= 4.1.1)
30
- arel (~> 5.0.0)
31
- activesupport (4.1.1)
32
- i18n (~> 0.6, >= 0.6.9)
33
- json (~> 1.7, >= 1.7.7)
34
- minitest (~> 5.1)
35
- thread_safe (~> 0.1)
36
- tzinfo (~> 1.1)
37
11
  addressable (2.3.6)
38
- arel (5.0.1.20140414130214)
39
- builder (3.2.2)
12
+ coderay (1.1.0)
40
13
  crack (0.4.2)
41
14
  safe_yaml (~> 1.0.0)
42
15
  diff-lcs (1.2.5)
@@ -48,42 +21,21 @@ GEM
48
21
  moneta
49
22
  multi_json (>= 1.9.2)
50
23
  netrc
51
- hike (1.2.3)
52
- i18n (0.6.9)
53
- json (1.8.1)
54
- mail (2.5.4)
55
- mime-types (~> 1.16)
56
- treetop (~> 1.4.8)
57
- mime-types (1.25.1)
58
- minitest (5.3.4)
24
+ method_source (0.8.2)
59
25
  moneta (0.8.0)
60
26
  mono_logger (1.1.0)
61
- multi_json (1.10.0)
27
+ multi_json (1.10.1)
62
28
  netrc (0.7.7)
63
29
  platform-api (0.2.0)
64
30
  heroics (~> 0.0.10)
65
- polyglot (0.3.4)
66
- psych (2.0.5)
31
+ pry (0.10.1)
32
+ coderay (~> 1.1.0)
33
+ method_source (~> 0.8.1)
34
+ slop (~> 3.4)
35
+ psych (2.0.6)
67
36
  rack (1.5.2)
68
37
  rack-protection (1.5.3)
69
38
  rack
70
- rack-test (0.6.2)
71
- rack (>= 1.0)
72
- rails (4.1.1)
73
- actionmailer (= 4.1.1)
74
- actionpack (= 4.1.1)
75
- actionview (= 4.1.1)
76
- activemodel (= 4.1.1)
77
- activerecord (= 4.1.1)
78
- activesupport (= 4.1.1)
79
- bundler (>= 1.3.0, < 2.0)
80
- railties (= 4.1.1)
81
- sprockets-rails (~> 2.0)
82
- railties (4.1.1)
83
- actionpack (= 4.1.1)
84
- activesupport (= 4.1.1)
85
- rake (>= 0.8.7)
86
- thor (>= 0.18.1, < 2.0)
87
39
  rake (10.3.2)
88
40
  redis (3.1.0)
89
41
  redis-namespace (1.5.1)
@@ -94,36 +46,25 @@ GEM
94
46
  redis-namespace (~> 1.3)
95
47
  sinatra (>= 0.9.2)
96
48
  vegas (~> 0.1.2)
97
- rspec (2.14.1)
98
- rspec-core (~> 2.14.0)
99
- rspec-expectations (~> 2.14.0)
100
- rspec-mocks (~> 2.14.0)
101
- rspec-core (2.14.8)
102
- rspec-expectations (2.14.5)
103
- diff-lcs (>= 1.1.3, < 2.0)
104
- rspec-mocks (2.14.6)
49
+ rspec (3.1.0)
50
+ rspec-core (~> 3.1.0)
51
+ rspec-expectations (~> 3.1.0)
52
+ rspec-mocks (~> 3.1.0)
53
+ rspec-core (3.1.3)
54
+ rspec-support (~> 3.1.0)
55
+ rspec-expectations (3.1.1)
56
+ diff-lcs (>= 1.2.0, < 2.0)
57
+ rspec-support (~> 3.1.0)
58
+ rspec-mocks (3.1.0)
59
+ rspec-support (~> 3.1.0)
60
+ rspec-support (3.1.0)
105
61
  safe_yaml (1.0.3)
106
62
  sinatra (1.4.5)
107
63
  rack (~> 1.4)
108
64
  rack-protection (~> 1.4)
109
65
  tilt (~> 1.3, >= 1.3.4)
110
- sprockets (2.12.1)
111
- hike (~> 1.2)
112
- multi_json (~> 1.0)
113
- rack (~> 1.0)
114
- tilt (~> 1.1, != 1.3.0)
115
- sprockets-rails (2.1.3)
116
- actionpack (>= 3.0)
117
- activesupport (>= 3.0)
118
- sprockets (~> 2.8)
119
- thor (0.19.1)
120
- thread_safe (0.3.3)
66
+ slop (3.6.0)
121
67
  tilt (1.4.1)
122
- treetop (1.4.15)
123
- polyglot
124
- polyglot (>= 0.3.1)
125
- tzinfo (1.1.0)
126
- thread_safe (~> 0.1)
127
68
  vegas (0.1.11)
128
69
  rack (>= 1.0.0)
129
70
  webmock (1.18.0)
@@ -135,8 +76,8 @@ PLATFORMS
135
76
 
136
77
  DEPENDENCIES
137
78
  heroku-resque-workers-scaler!
138
- psych
139
- rails
140
- rake
141
- rspec
142
- webmock
79
+ pry
80
+ psych (~> 2.0.6)
81
+ rake (~> 10.3.2)
82
+ rspec (~> 3.1.0)
83
+ webmock (~> 1.18.0)
data/README.md CHANGED
@@ -15,19 +15,45 @@ On fork => https://github.com/joel/heroku-resque-workers-scaler
15
15
  * I've switched to Rspec from TestUnit
16
16
  * I've switched to HerokuAPI Gem instead of Heroku Client Gem
17
17
  * Add safe mode for heroku
18
+ * See CHANGELOG
18
19
 
19
20
  ### Configuration :
20
21
 
21
22
  You need to defined two vars for your heroku :
22
23
 
23
- Go to your https://api.heroku.com/account
24
+ `Go to your https://api.heroku.com/account`
25
+
26
+ ```
24
27
  heroku config:add HEROKU_API_KEY=your_api_key -a your_app_name
25
28
  heroku config:add HEROKU_APP_NAME=your_app_name -a your_app_name
29
+ heroku config:add export SAFE_MODE=true -a your_app_name
30
+ ```
31
+
32
+ ## Run localy
26
33
 
27
34
  You can test when executed this :
35
+
36
+ ```
37
+ export HEROKU_API_KEY=your_api_key
38
+ export HEROKU_APP_NAME=your_app_name
39
+ export SAFE_MODE=true
40
+ export ENVIRONMENT=development
28
41
  ```
29
- HEROKU_API_KEY=your_api_key HEROKU_APP_NAME=your_app_name *** bundle exec *** rake spec
42
+ open `irb`
43
+
30
44
  ```
45
+ irb -r heroku-resque-workers-scaler -I ./lib
46
+ ```
47
+ play with commands
48
+ ```
49
+ >> HerokuResqueAutoScale::Scaler.workers
50
+ => 0
51
+ >> HerokuResqueAutoScale::Scaler.workers=1
52
+ => 1
53
+ >> HerokuResqueAutoScale::Scaler.workers=0
54
+ => 0
55
+ ```
56
+
31
57
  You can change the thresholds, environments of execution and the name of your worker process in your project on config/scaler_config.yml
32
58
 
33
59
  Exmple YAML file contents:
@@ -40,7 +66,7 @@ Exmple YAML file contents:
40
66
  environments:
41
67
  - production
42
68
  worker_name: resque
43
-
69
+
44
70
  I just bundled it into a gem for easy inclusion into other projects.
45
71
 
46
72
  #### Usage
@@ -75,4 +101,3 @@ When you ask heroku for scale down workers, heroku send SIGTERM and wait 4 secon
75
101
 
76
102
  Copyright (c) 2010 Mark Quezada. See LICENSE.txt for
77
103
  further details.
78
-
@@ -11,4 +11,6 @@ thresholds:
11
11
  :job_count: 60
12
12
  environments:
13
13
  - production
14
- - staging
14
+ - staging
15
+ - development
16
+ worker_name: worker
@@ -1,27 +1,29 @@
1
- # -*- encoding: utf-8 -*-
2
- require File.expand_path('../lib/heroku-resque-workers-scaler/version', __FILE__)
1
+ require_relative 'lib/heroku-resque-workers-scaler/version'
3
2
 
4
- Gem::Specification.new do |gem|
5
- gem.authors = ['Mark Quezada', 'Joel AZEMAR']
6
- gem.email = ['mark@mirthlab.com', 'joel.azemar@gmail.com']
7
- gem.description = %q{Auto scale your resque workers on Heroku.}
8
- gem.summary = %q{Simple helper for Rails App configuration}
9
- gem.homepage = 'http://github.com/mirthlab/heroku-resque-workers-scaler'
10
- # gem.homepage = 'https://github.com/joel/heroku-resque-workers-scaler'
11
- gem.licenses = [ 'MIT' ]
12
- gem.files = `git ls-files`.split($\)
13
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14
- gem.test_files = gem.files.grep(%r{^(spec)/})
15
- gem.name = 'heroku-resque-workers-scaler'
16
- gem.require_paths = ['lib']
17
- gem.version = HerokuResqueAutoScale::VERSION
3
+ Gem::Specification.new do |spec|
4
+ spec.name = 'heroku-resque-workers-scaler'
5
+ spec.version = HerokuResqueAutoScale::VERSION
6
+ spec.date = '2012-10-22'
7
+ spec.summary = %q{Simple helper for Rails App configuration}
8
+ spec.description = %q{Auto scale your resque workers on Heroku.}
9
+ spec.authors = ['Mark Quezada', 'Joel AZEMAR']
10
+ spec.email = ['mark@mirthlab.com', 'joel.azemar@gmail.com']
18
11
 
19
- gem.add_runtime_dependency 'resque'
20
- gem.add_runtime_dependency 'platform-api'
21
-
22
- gem.add_development_dependency 'rails'
23
- gem.add_development_dependency 'rspec'
24
- gem.add_development_dependency 'webmock'
25
- gem.add_development_dependency 'rake'
26
- gem.add_development_dependency 'psych'
27
- end
12
+ spec.homepage = 'https://github.com/joel/heroku-resque-workers-scaler'
13
+ spec.license = 'MIT'
14
+
15
+ spec.files = `git ls-files`.split($/)
16
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ spec.test_files = spec.files.grep(%r{^(spec)/})
18
+ spec.require_paths = ['lib']
19
+
20
+ spec.add_dependency 'resque', '~> 1.25.2'
21
+ spec.add_dependency 'platform-api', '~> 0.2.0'
22
+
23
+ spec.add_development_dependency 'rspec', '~> 3.1.0'
24
+ spec.add_development_dependency 'webmock', '~> 1.18.0'
25
+ spec.add_development_dependency 'rake', '~> 10.3.2'
26
+ spec.add_development_dependency 'psych', '~> 2.0.6'
27
+
28
+ # spec.required_ruby_version = '~> 2.1'
29
+ end
@@ -1,52 +1,35 @@
1
+ require 'yaml'
2
+
1
3
  module HerokuResqueAutoScale
2
4
  module Config
3
5
  extend self
4
-
6
+
5
7
  CONFIG_FILE_NAME = 'scaler_config.yml'
6
-
8
+
7
9
  def thresholds
8
- @thresholds ||= begin
9
- if config_file? && config.has_key?('thresholds')
10
- config['thresholds']
11
- else
12
- [{workers:1,job_count:1},{workers:2,job_count:15},{workers:3,job_count:25},{workers:4,job_count:40},{workers:5,job_count:60}]
13
- end
14
- end
10
+ @thresholds ||= config['thresholds']
15
11
  end
16
-
12
+
17
13
  def environments
18
- @environments ||= begin
19
- if config_file? && config.has_key?('environments')
20
- config['environments']
21
- else
22
- [ 'production' ]
23
- end
24
- end
14
+ @environments ||= config['environments']
25
15
  end
26
16
 
27
17
  def worker_name
28
- @worker_name ||= begin
29
- if config_file? && config.has_key?('worker_name')
30
- config['worker_name']
31
- else
32
- 'worker'
33
- end
34
- end
35
- end
36
-
37
- private
38
-
39
- def config_file?
40
- @config_file ||= override? || File.exists?(CONFIG_FILE_NAME)
18
+ @worker_name ||= config['worker_name']
41
19
  end
42
-
20
+
21
+ private
22
+
43
23
  def config
44
- @config ||= override? ? YAML.load_file(Rails.root.join("config/#{CONFIG_FILE_NAME}").to_s) : YAML.load_file(CONFIG_FILE_NAME)
24
+ @config ||= YAML.load_file(config_route_path)
45
25
  end
46
-
47
- def override?
48
- File.exists?(Rails.root.join("config/#{CONFIG_FILE_NAME}").to_s) rescue false
26
+
27
+ def config_route_path
28
+ if defined?(Rails) && File.exists?(Rails.root.join("config/#{CONFIG_FILE_NAME}").to_s)
29
+ Rails.root.join("config/#{CONFIG_FILE_NAME}").to_s
30
+ else
31
+ File.expand_path("../../../config/#{CONFIG_FILE_NAME}", __FILE__)
32
+ end
49
33
  end
50
34
  end
51
35
  end
52
-
@@ -1,4 +1,5 @@
1
1
  require 'platform-api'
2
+ require 'resque'
2
3
 
3
4
  module HerokuResqueAutoScale
4
5
  module Scaler
@@ -18,9 +19,9 @@ module HerokuResqueAutoScale
18
19
  quantity = quantity.to_i
19
20
 
20
21
  if safe_mode? and setting_this_number_of_workers_will_scale_down? quantity
21
- return unless all_jobs_hve_been_processed?
22
+ return unless all_jobs_have_been_processed?
22
23
  end
23
- result = @@heroku.formation.update(app_name, worker_name, {quantity: quantity})
24
+ result = @@heroku.formation.update(app_name, worker_name, { quantity: quantity })
24
25
  result['quantity'] == quantity
25
26
  end
26
27
 
@@ -46,14 +47,22 @@ module HerokuResqueAutoScale
46
47
  ENV['SAFE_MODE'] and ENV['SAFE_MODE'] == 'true'
47
48
  end
48
49
 
49
- def all_jobs_hve_been_processed?
50
+ def all_jobs_have_been_processed?
50
51
  job_count + working_job_count == 0
51
52
  end
52
53
 
53
54
  private
54
55
 
55
56
  def authorized?
56
- HerokuResqueAutoScale::Config.environments.include? Rails.env.to_s
57
+ HerokuResqueAutoScale::Config.environments.include? _environment
58
+ end
59
+
60
+ def _environment
61
+ if defined?(Rails)
62
+ Rails.env.to_s
63
+ else
64
+ ENV['ENVIRONMENT'] || 'test'
65
+ end
57
66
  end
58
67
 
59
68
  def worker_name
@@ -94,4 +103,4 @@ module HerokuResqueAutoScale
94
103
  # and one working job (which is this job)
95
104
  Scaler.workers = 0 if Scaler.job_count.zero? && Scaler.working_job_count == 1
96
105
  end
97
- end
106
+ end
@@ -1,3 +1,3 @@
1
1
  module HerokuResqueAutoScale
2
- VERSION = '0.2.0'
3
- end
2
+ VERSION = '0.2.1'
3
+ end
@@ -8,21 +8,8 @@ describe HerokuResqueAutoScale::Config do
8
8
  end
9
9
 
10
10
  context 'using the supplied config file' do
11
- it { HerokuResqueAutoScale::Config.thresholds.should be_instance_of Array }
12
- it { HerokuResqueAutoScale::Config.environments.should eql ['production','staging'] }
13
- it { HerokuResqueAutoScale::Config.worker_name.should eql 'worker' }
14
- end
15
-
16
- context 'with missing config values' do
17
- before :each do
18
- HerokuResqueAutoScale::Config.stub(:config).and_return({})
19
- end
20
-
21
- it { HerokuResqueAutoScale::Config.thresholds.should be_instance_of Array }
22
- it { HerokuResqueAutoScale::Config.environments.should eql ['production'] }
23
- it { HerokuResqueAutoScale::Config.worker_name.should eql 'worker' }
24
-
11
+ it { expect(HerokuResqueAutoScale::Config.thresholds).to be_instance_of Array }
12
+ it { expect(HerokuResqueAutoScale::Config.environments).to eql(['production','staging', 'development']) }
13
+ it { expect(HerokuResqueAutoScale::Config.worker_name).to eql 'worker' }
25
14
  end
26
15
  end
27
-
28
-
@@ -3,12 +3,10 @@ require 'spec_helper'
3
3
  describe HerokuResqueAutoScale::Scaler do
4
4
 
5
5
  context 'when authorised' do
6
-
7
- before { HerokuResqueAutoScale::Scaler.stub(:authorized?).and_return(true) }
6
+ before { allow(HerokuResqueAutoScale::Scaler).to receive(:authorized?) { true }}
8
7
 
9
8
  context 'with safe mode disabled' do
10
-
11
- before { HerokuResqueAutoScale::Scaler.stub(:safe_mode?).and_return(false) }
9
+ before { allow(HerokuResqueAutoScale::Scaler).to receive(:safe_mode?) { false }}
12
10
 
13
11
  describe 'get number of workers' do
14
12
  before do
@@ -21,12 +19,12 @@ describe HerokuResqueAutoScale::Scaler do
21
19
  'type' => 'web',
22
20
  'updated_at' => '2012-01-01T12:00:00Z'
23
21
  }
24
- PlatformAPI::Client.any_instance.stub_chain(:formation, :info).and_return(response_hash)
22
+ allow_any_instance_of(PlatformAPI::Client).to receive_message_chain(:formation, :info) { response_hash }
25
23
  end
26
-
27
- it { HerokuResqueAutoScale::Scaler.workers.should eql 42 }
24
+
25
+ it { expect(HerokuResqueAutoScale::Scaler.workers).to eql(42) }
28
26
  end
29
-
27
+
30
28
  describe 'set number of workers' do
31
29
  before do
32
30
  response_hash = {
@@ -38,50 +36,49 @@ describe HerokuResqueAutoScale::Scaler do
38
36
  'type' => 'web',
39
37
  'updated_at' => '2012-01-01T12:00:00Z'
40
38
  }
41
-
42
- PlatformAPI::Client.any_instance.stub_chain(:formation, :update).and_return(response_hash)
39
+ allow_any_instance_of(PlatformAPI::Client).to receive_message_chain(:formation, :update) { response_hash }
43
40
  end
44
-
45
- it { HerokuResqueAutoScale::Scaler.send(:workers=, 69).should be_true }
41
+
42
+ it { expect(HerokuResqueAutoScale::Scaler.send(:workers=, 69)).to be_truthy }
46
43
  end
47
-
44
+
48
45
  describe 'ask for job and working count' do
49
- before { Resque.stub(info: { pending: '16', working: '61' }) }
50
-
51
- it { HerokuResqueAutoScale::Scaler.job_count.should eql 16 }
52
- it { HerokuResqueAutoScale::Scaler.working_job_count.should eql 61 }
46
+ before { allow(Resque).to receive(:info) {{ pending: '16', working: '61' }} }
47
+
48
+ it { expect(HerokuResqueAutoScale::Scaler.job_count).to eql 16 }
49
+ it { expect(HerokuResqueAutoScale::Scaler.working_job_count).to eql 61 }
53
50
  end
54
51
  end
55
-
52
+
56
53
  context 'with safe mode enabled' do
57
- before { HerokuResqueAutoScale::Scaler.stub safe_mode?: true }
54
+ before { allow(HerokuResqueAutoScale::Scaler).to receive(:safe_mode?) { true }}
58
55
 
59
56
  context 'when about to scale down' do
60
- before { HerokuResqueAutoScale::Scaler.stub setting_this_number_of_workers_will_scale_down?: true }
57
+ before { allow(HerokuResqueAutoScale::Scaler).to receive(:setting_this_number_of_workers_will_scale_down?) { true }}
61
58
 
62
59
  context 'when there are some jobs left to process' do
63
- before { HerokuResqueAutoScale::Scaler.stub all_jobs_hve_been_processed?: false }
60
+ before { allow(HerokuResqueAutoScale::Scaler).to receive(:all_jobs_have_been_processed?) { false }}
64
61
 
65
- it 'does not trigger the API call' do
66
- PlatformAPI::Client.any_instance.should_not_receive(:formation)
67
- HerokuResqueAutoScale::Scaler.send(:workers=, '69')
68
- end
62
+ # it 'does not trigger the API call' do
63
+ # allow_any_instance_of(PlatformAPI::Client).to_not receive(:formation)
64
+ # HerokuResqueAutoScale::Scaler.send(:workers=, '69')
65
+ # end
69
66
  end
70
67
 
71
68
  context 'when there are no jobs left to process' do
72
- before { HerokuResqueAutoScale::Scaler.stub all_jobs_hve_been_processed?: true }
69
+ before { allow(HerokuResqueAutoScale::Scaler).to receive(:all_jobs_have_been_processed?) { true }}
73
70
 
74
71
  describe 'should trigger action' do
75
72
  it 'does not trigger the API call' do
76
73
  mock_client = double(PlatformAPI::Client).as_null_object
77
- PlatformAPI::Client.any_instance.should_receive(:formation).and_return(mock_client)
74
+ allow_any_instance_of(PlatformAPI::Client).to receive(:formation) { mock_client }
78
75
  HerokuResqueAutoScale::Scaler.send(:workers=, '69')
79
76
  end
80
77
  end
81
78
  end
82
79
  end
83
-
80
+
84
81
  end
85
82
  end
86
-
87
- end
83
+
84
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,12 +1,12 @@
1
- $:.unshift File.expand_path('..', __FILE__)
2
- $:.unshift File.expand_path('../../lib', __FILE__)
3
-
4
- require 'rspec'
5
- require 'webmock/rspec'
6
1
  require 'heroku-resque-workers-scaler'
7
- require 'json'
2
+ require 'bundler/setup'
3
+
8
4
  require 'resque'
9
- require 'rails'
5
+
6
+ begin
7
+ require 'pry'
8
+ rescue LoadError
9
+ end
10
10
 
11
11
  RSpec.configure do |config|
12
12
  config.mock_with :rspec
@@ -16,4 +16,4 @@ end
16
16
  # end
17
17
 
18
18
  # RSpec.configuration.before(:each) do
19
- # end
19
+ # end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heroku-resque-workers-scaler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark Quezada
@@ -9,106 +9,92 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-09-12 00:00:00.000000000 Z
12
+ date: 2012-10-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: resque
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '0'
20
+ version: 1.25.2
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ">="
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '0'
27
+ version: 1.25.2
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: platform-api
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: '0'
34
+ version: 0.2.0
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: '0'
42
- - !ruby/object:Gem::Dependency
43
- name: rails
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - ">="
47
- - !ruby/object:Gem::Version
48
- version: '0'
49
- type: :development
50
- prerelease: false
51
- version_requirements: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - ">="
54
- - !ruby/object:Gem::Version
55
- version: '0'
41
+ version: 0.2.0
56
42
  - !ruby/object:Gem::Dependency
57
43
  name: rspec
58
44
  requirement: !ruby/object:Gem::Requirement
59
45
  requirements:
60
- - - ">="
46
+ - - "~>"
61
47
  - !ruby/object:Gem::Version
62
- version: '0'
48
+ version: 3.1.0
63
49
  type: :development
64
50
  prerelease: false
65
51
  version_requirements: !ruby/object:Gem::Requirement
66
52
  requirements:
67
- - - ">="
53
+ - - "~>"
68
54
  - !ruby/object:Gem::Version
69
- version: '0'
55
+ version: 3.1.0
70
56
  - !ruby/object:Gem::Dependency
71
57
  name: webmock
72
58
  requirement: !ruby/object:Gem::Requirement
73
59
  requirements:
74
- - - ">="
60
+ - - "~>"
75
61
  - !ruby/object:Gem::Version
76
- version: '0'
62
+ version: 1.18.0
77
63
  type: :development
78
64
  prerelease: false
79
65
  version_requirements: !ruby/object:Gem::Requirement
80
66
  requirements:
81
- - - ">="
67
+ - - "~>"
82
68
  - !ruby/object:Gem::Version
83
- version: '0'
69
+ version: 1.18.0
84
70
  - !ruby/object:Gem::Dependency
85
71
  name: rake
86
72
  requirement: !ruby/object:Gem::Requirement
87
73
  requirements:
88
- - - ">="
74
+ - - "~>"
89
75
  - !ruby/object:Gem::Version
90
- version: '0'
76
+ version: 10.3.2
91
77
  type: :development
92
78
  prerelease: false
93
79
  version_requirements: !ruby/object:Gem::Requirement
94
80
  requirements:
95
- - - ">="
81
+ - - "~>"
96
82
  - !ruby/object:Gem::Version
97
- version: '0'
83
+ version: 10.3.2
98
84
  - !ruby/object:Gem::Dependency
99
85
  name: psych
100
86
  requirement: !ruby/object:Gem::Requirement
101
87
  requirements:
102
- - - ">="
88
+ - - "~>"
103
89
  - !ruby/object:Gem::Version
104
- version: '0'
90
+ version: 2.0.6
105
91
  type: :development
106
92
  prerelease: false
107
93
  version_requirements: !ruby/object:Gem::Requirement
108
94
  requirements:
109
- - - ">="
95
+ - - "~>"
110
96
  - !ruby/object:Gem::Version
111
- version: '0'
97
+ version: 2.0.6
112
98
  description: Auto scale your resque workers on Heroku.
113
99
  email:
114
100
  - mark@mirthlab.com
@@ -127,16 +113,16 @@ files:
127
113
  - LICENSE.txt
128
114
  - README.md
129
115
  - Rakefile
116
+ - config/scaler_config.yml
130
117
  - heroku-resque-workers-scaler.gemspec
131
118
  - lib/heroku-resque-workers-scaler.rb
132
119
  - lib/heroku-resque-workers-scaler/config.rb
133
120
  - lib/heroku-resque-workers-scaler/scaler.rb
134
121
  - lib/heroku-resque-workers-scaler/version.rb
135
- - scaler_config.yml
136
122
  - spec/heroku-resque-workers-scaler/config_spec.rb
137
123
  - spec/heroku-resque-workers-scaler/scaler_spec.rb
138
124
  - spec/spec_helper.rb
139
- homepage: http://github.com/mirthlab/heroku-resque-workers-scaler
125
+ homepage: https://github.com/joel/heroku-resque-workers-scaler
140
126
  licenses:
141
127
  - MIT
142
128
  metadata: {}