workless 1.1.3 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5818c8af31664494d49a5ae37ce3248f068f89a6
4
+ data.tar.gz: ff827678c442c0151f40f0fa1946b1197a2f3c2e
5
+ SHA512:
6
+ metadata.gz: 8dea06dfeccbc2097741aa16f048b5d61f8329741f896d27ccaf294812b3b59800122fc92d732b578e2a50b5aec228a36563e0f51531de904a28e51dc031b1fb
7
+ data.tar.gz: e94dbc3534ea6bee4c4fe0b9c3237122a16c079f2ad43985a05b991ee6eae112dd44e79bf89891215ac3e1ae7cc4fa2ffc0e59ef0257fd88cee076145b607bab
data/README.md CHANGED
@@ -9,6 +9,7 @@ By adding the gem to your project and configuring our Heroku app with some confi
9
9
 
10
10
  ## Updates
11
11
 
12
+ * Version 1.2.0 includes new support for Sequel by @davidakachaos
12
13
  * Version 1.1.3 includes changes by @radanskoric to reduce number of heroku api calls
13
14
  * Version 1.1.2 includes a change by @davidakachaos to scale workers using after_commit
14
15
  * Version 1.1.1 includes a fix from @filiptepper and @fixr to correctly scale workers
@@ -2,3 +2,4 @@ Delayed::Worker.max_attempts = 3
2
2
  Delayed::Backend::ActiveRecord::Job.send(:include, Delayed::Workless::Scaler) if defined?(Delayed::Backend::ActiveRecord::Job)
3
3
  Delayed::Backend::Mongoid::Job.send(:include, Delayed::Workless::Scaler) if defined?(Delayed::Backend::Mongoid::Job)
4
4
  Delayed::Backend::MongoMapper::Job.send(:include, Delayed::Workless::Scaler) if defined?(Delayed::Backend::MongoMapper::Job)
5
+ Delayed::Backend::Sequel::Job.send(:include, Delayed::Workless::Scaler) if defined?(Delayed::Backend::Sequel::Job)
@@ -9,18 +9,31 @@ module Delayed
9
9
 
10
10
  def self.included(base)
11
11
  base.send :extend, ClassMethods
12
- unless base.to_s =~ /ActiveRecord/
13
- base.class_eval do
14
- after_destroy "self.class.scaler.down"
15
- after_create "self.class.scaler.up"
16
- after_update "self.class.scaler.down", :unless => Proc.new {|r| r.failed_at.nil? }
17
- end
18
- else
12
+ if base.to_s =~ /ActiveRecord/
19
13
  base.class_eval do
20
14
  after_commit "self.class.scaler.down", :on => :destroy
21
15
  after_commit "self.class.scaler.up", :on => :create
22
16
  after_commit "self.class.scaler.down", :on => :update, :unless => Proc.new {|r| r.failed_at.nil? }
23
17
  end
18
+ elsif base.to_s =~ /Sequel/
19
+ base.send(:define_method, 'after_destroy') do
20
+ super
21
+ self.class.scaler.down
22
+ end
23
+ base.send(:define_method, 'after_create') do
24
+ super
25
+ self.class.scaler.up
26
+ end
27
+ base.send(:define_method, 'after_update') do
28
+ super
29
+ self.class.scaler.down
30
+ end
31
+ else
32
+ base.class_eval do
33
+ after_destroy "self.class.scaler.down"
34
+ after_create "self.class.scaler.up"
35
+ after_update "self.class.scaler.down", :unless => Proc.new {|r| r.failed_at.nil? }
36
+ end
24
37
  end
25
38
 
26
39
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workless
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
5
- prerelease:
4
+ version: 1.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - lostboy
@@ -14,81 +13,71 @@ dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: heroku-api
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rush
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: delayed_job
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: 2.0.7
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - '>='
76
67
  - !ruby/object:Gem::Version
77
68
  version: 2.0.7
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rspec
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - '>='
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - '>='
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  description: Extension to Delayed Job to enable workers to scale up when needed
@@ -111,26 +100,25 @@ files:
111
100
  - README.md
112
101
  homepage: http://github.com/lostboy/workless
113
102
  licenses: []
103
+ metadata: {}
114
104
  post_install_message:
115
105
  rdoc_options: []
116
106
  require_paths:
117
107
  - lib
118
108
  required_ruby_version: !ruby/object:Gem::Requirement
119
- none: false
120
109
  requirements:
121
- - - ! '>='
110
+ - - '>='
122
111
  - !ruby/object:Gem::Version
123
112
  version: '0'
124
113
  required_rubygems_version: !ruby/object:Gem::Requirement
125
- none: false
126
114
  requirements:
127
- - - ! '>='
115
+ - - '>='
128
116
  - !ruby/object:Gem::Version
129
117
  version: 1.3.6
130
118
  requirements: []
131
119
  rubyforge_project:
132
- rubygems_version: 1.8.24
120
+ rubygems_version: 2.0.5
133
121
  signing_key:
134
- specification_version: 3
122
+ specification_version: 4
135
123
  summary: Use delayed job workers only when theyre needed on Heroku
136
124
  test_files: []