langrove-plugin-resque 0.0.9 → 0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.rvmrc +31 -0
- data/Gemfile +10 -0
- data/Gemfile.lock +87 -0
- data/Guardfile +11 -0
- data/README.md +15 -16
- data/langrove-plugin-resque.gemspec +15 -0
- data/lib/adaptor/resque_adaptor.rb +1 -1
- data/lib/handler/{resque_job.rb → resque_handler.rb} +13 -2
- data/lib/langrove-plugin-resque.rb +4 -3
- data/lib/plugin/{resque_que.rb → resque_queue.rb} +1 -1
- data/spec/adaptor/resque_adaptor_spec.rb +3 -5
- data/spec/handler/{resque_job_spec.rb → resque_handler_spec.rb} +3 -3
- data/spec/plugin/{resque_que_spec.rb → resque_queue_spec.rb} +3 -13
- data/spec/spec_helper.rb +12 -0
- metadata +16 -10
data/.rvmrc
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
environment_id="ruby-1.9.2-p318@langrove-test"
|
2
|
+
|
3
|
+
# Uncomment the following lines if you want to verify rvm version per project
|
4
|
+
# rvmrc_rvm_version="1.12.3 (master)" # 1.10.1 seams as a safe start
|
5
|
+
# eval "$(echo ${rvm_version}.${rvmrc_rvm_version} | awk -F. '{print "[[ "$1*65536+$2*256+$3" -ge "$4*65536+$5*256+$6" ]]"}' )" || {
|
6
|
+
# echo "This .rvmrc file requires at least RVM ${rvmrc_rvm_version}, aborting loading."
|
7
|
+
# return 1
|
8
|
+
# }
|
9
|
+
|
10
|
+
# First we attempt to load the desired environment directly from the environment
|
11
|
+
# file. This is very fast and efficient compared to running through the entire
|
12
|
+
# CLI and selector. If you want feedback on which environment was used then
|
13
|
+
# insert the word 'use' after --create as this triggers verbose mode.
|
14
|
+
if [[ -d "${rvm_path:-$HOME/.rvm}/environments"
|
15
|
+
&& -s "${rvm_path:-$HOME/.rvm}/environments/$environment_id" ]]
|
16
|
+
then
|
17
|
+
\. "${rvm_path:-$HOME/.rvm}/environments/$environment_id"
|
18
|
+
[[ -s "${rvm_path:-$HOME/.rvm}/hooks/after_use" ]] &&
|
19
|
+
\. "${rvm_path:-$HOME/.rvm}/hooks/after_use" || true
|
20
|
+
if [[ $- == *i* ]] # check for interactive shells
|
21
|
+
then echo "Using: $(tput setaf 2)$GEM_HOME$(tput sgr0)" # show the user the ruby and gemset they are using in green
|
22
|
+
else echo "Using: $GEM_HOME" # don't use colors in non-interactive shells
|
23
|
+
fi
|
24
|
+
else
|
25
|
+
# If the environment file has not yet been created, use the RVM CLI to select.
|
26
|
+
rvm --create use "$environment_id" || {
|
27
|
+
echo "Failed to create RVM environment '${environment_id}'."
|
28
|
+
return 1
|
29
|
+
}
|
30
|
+
fi
|
31
|
+
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,87 @@
|
|
1
|
+
GIT
|
2
|
+
remote: git@github.com:cluetechnologies/langrove-enterprise.git
|
3
|
+
revision: ba46ec4bfd41f9c8962e6aab938c2733f4be225d
|
4
|
+
branch: master
|
5
|
+
specs:
|
6
|
+
langrove (0.0.5.2)
|
7
|
+
awesome_print
|
8
|
+
daemon-kit
|
9
|
+
em-http-request
|
10
|
+
em-websocket
|
11
|
+
eventmachine
|
12
|
+
eventmachine_httpserver
|
13
|
+
|
14
|
+
GEM
|
15
|
+
remote: http://rubygems.org/
|
16
|
+
remote: http://rubygems.org/
|
17
|
+
specs:
|
18
|
+
addressable (2.3.2)
|
19
|
+
awesome_print (1.0.2)
|
20
|
+
daemon-kit (0.1.8.2)
|
21
|
+
eventmachine (>= 0.12.10)
|
22
|
+
safely (>= 0.3.1)
|
23
|
+
diff-lcs (1.1.3)
|
24
|
+
em-http-request (0.3.0)
|
25
|
+
addressable (>= 2.0.0)
|
26
|
+
escape_utils
|
27
|
+
eventmachine (>= 0.12.9)
|
28
|
+
em-websocket (0.3.8)
|
29
|
+
addressable (>= 2.1.1)
|
30
|
+
eventmachine (>= 0.12.9)
|
31
|
+
escape_utils (0.2.4)
|
32
|
+
eventmachine (0.12.10)
|
33
|
+
eventmachine_httpserver (0.2.1)
|
34
|
+
ffi (1.1.1)
|
35
|
+
guard (1.2.3)
|
36
|
+
listen (>= 0.4.2)
|
37
|
+
thor (>= 0.14.6)
|
38
|
+
guard-rspec (1.2.0)
|
39
|
+
guard (>= 1.1)
|
40
|
+
listen (0.4.7)
|
41
|
+
rb-fchange (~> 0.0.5)
|
42
|
+
rb-fsevent (~> 0.9.1)
|
43
|
+
rb-inotify (~> 0.8.8)
|
44
|
+
multi_json (1.3.6)
|
45
|
+
rack (1.4.1)
|
46
|
+
rack-protection (1.2.0)
|
47
|
+
rack
|
48
|
+
rb-fchange (0.0.5)
|
49
|
+
ffi
|
50
|
+
rb-fsevent (0.9.1)
|
51
|
+
rb-inotify (0.8.8)
|
52
|
+
ffi (>= 0.5.0)
|
53
|
+
redis (3.0.1)
|
54
|
+
redis-namespace (1.2.0)
|
55
|
+
redis (~> 3.0.0)
|
56
|
+
resque (1.21.0)
|
57
|
+
multi_json (~> 1.0)
|
58
|
+
redis-namespace (~> 1.0)
|
59
|
+
sinatra (>= 0.9.2)
|
60
|
+
vegas (~> 0.1.2)
|
61
|
+
rspec (2.11.0)
|
62
|
+
rspec-core (~> 2.11.0)
|
63
|
+
rspec-expectations (~> 2.11.0)
|
64
|
+
rspec-mocks (~> 2.11.0)
|
65
|
+
rspec-core (2.11.1)
|
66
|
+
rspec-expectations (2.11.2)
|
67
|
+
diff-lcs (~> 1.1.3)
|
68
|
+
rspec-mocks (2.11.1)
|
69
|
+
safely (0.3.2)
|
70
|
+
sinatra (1.3.2)
|
71
|
+
rack (~> 1.3, >= 1.3.6)
|
72
|
+
rack-protection (~> 1.2)
|
73
|
+
tilt (~> 1.3, >= 1.3.3)
|
74
|
+
thor (0.15.4)
|
75
|
+
tilt (1.3.3)
|
76
|
+
vegas (0.1.11)
|
77
|
+
rack (>= 1.0.0)
|
78
|
+
|
79
|
+
PLATFORMS
|
80
|
+
ruby
|
81
|
+
|
82
|
+
DEPENDENCIES
|
83
|
+
guard
|
84
|
+
guard-rspec
|
85
|
+
langrove!
|
86
|
+
resque
|
87
|
+
rspec
|
data/Guardfile
ADDED
data/README.md
CHANGED
@@ -1,42 +1,40 @@
|
|
1
1
|
`Plugin::Resque`
|
2
|
-
|
3
|
-
|
4
|
-
Intergates Resque support into LanGrove.</ br>
|
2
|
+
===============
|
5
3
|
|
4
|
+
Integrates [Resque](https://github.com/defunkt/resque/) Worker and Job functionality into LanGrove. Resque used [Redis](http://redis.io/documentation) under the hood.
|
6
5
|
|
7
6
|
`gem install langrove-plugin-resque`
|
8
7
|
|
9
|
-
Implements
|
8
|
+
Implements
|
10
9
|
----------
|
11
10
|
|
12
|
-
* `Adaptor::
|
13
|
-
* `Handler::
|
14
|
-
* `Plugin::
|
11
|
+
* `Adaptor::ResqueAdaptor < LanGrove::Adaptor::Base` ...the worker (de-queue-er)
|
12
|
+
* `Handler::ResqueHandler < LanGrove::Handler::Base` ...the job
|
13
|
+
* `Plugin::ResqueQueue < LanGrove::Plugin::Deferror` ...the en-queue-er
|
15
14
|
|
16
15
|
|
17
16
|
Supports
|
18
|
-
|
17
|
+
--------
|
19
18
|
|
20
|
-
* `LanGrove::Adaptor`
|
21
19
|
* `LanGrove::Behaviour::Deferrable`
|
22
20
|
|
23
21
|
|
24
22
|
Examples
|
25
23
|
--------
|
26
24
|
|
27
|
-
### Configure to post jobs onto a queue.
|
25
|
+
### Configure a Daemon to post jobs onto a queue.
|
28
26
|
|
29
27
|
<pre>
|
30
28
|
|
31
|
-
|
29
|
+
...
|
32
30
|
|
33
31
|
:plugins:
|
34
32
|
:a_job_queue:
|
35
|
-
|
33
|
+
:class: ResqueQueue
|
36
34
|
:job: JobName
|
37
35
|
:queue: job_name
|
38
36
|
|
39
|
-
|
37
|
+
...
|
40
38
|
|
41
39
|
:server:
|
42
40
|
:behavior:
|
@@ -55,7 +53,7 @@ Examples
|
|
55
53
|
|
56
54
|
</pre>
|
57
55
|
|
58
|
-
### Configure to perform jobs
|
56
|
+
### Configure a Daemon to perform jobs from a queue.
|
59
57
|
|
60
58
|
<pre>
|
61
59
|
|
@@ -70,9 +68,10 @@ Examples
|
|
70
68
|
:handler:
|
71
69
|
:class: JobName
|
72
70
|
#
|
73
|
-
# Should extend Handler::
|
71
|
+
# Should extend Handler::ResqueHandler
|
74
72
|
#
|
75
73
|
|
76
74
|
...
|
77
75
|
|
78
|
-
</pre>
|
76
|
+
</pre>
|
77
|
+
|
@@ -0,0 +1,15 @@
|
|
1
|
+
$LOAD_PATH.unshift 'lib'
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = %q{langrove-plugin-resque}
|
5
|
+
spec.version = '0.2'
|
6
|
+
spec.date = DateTime.now.strftime( "%Y-%m-%d" )
|
7
|
+
spec.authors = ["Richard","","",""]
|
8
|
+
spec.email = %q{ops@clue.co.za}
|
9
|
+
spec.summary = %q{Integrates Resque Workers and Jobs into LanGrove}
|
10
|
+
spec.homepage = %q{https://github.com/cluetechnologies/langrove-plugin-resque}
|
11
|
+
spec.description = %q{}
|
12
|
+
spec.add_dependency 'langrove'
|
13
|
+
spec.add_dependency 'resque'
|
14
|
+
spec.files = `git ls-files`.strip.split("\n")
|
15
|
+
end
|
@@ -1,9 +1,20 @@
|
|
1
1
|
module Handler
|
2
2
|
|
3
|
-
class
|
3
|
+
class ResqueHandler < LanGrove::Handler::Deferred
|
4
4
|
|
5
5
|
attr_accessor :payload
|
6
6
|
|
7
|
+
def do_work
|
8
|
+
|
9
|
+
#
|
10
|
+
# OVERRIDE
|
11
|
+
#
|
12
|
+
# To do the Job (payload in @capsule)
|
13
|
+
#
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
|
7
18
|
def start_handler
|
8
19
|
|
9
20
|
#
|
@@ -53,7 +64,7 @@ module Handler
|
|
53
64
|
#
|
54
65
|
start
|
55
66
|
|
56
|
-
do_work
|
67
|
+
do_work
|
57
68
|
|
58
69
|
|
59
70
|
#
|
@@ -1,4 +1,5 @@
|
|
1
|
-
require 'langrove' unless defined?( LanGrove )
|
1
|
+
require 'langrove' unless defined?( LanGrove::Adaptor )
|
2
|
+
require 'resque'
|
2
3
|
require 'adaptor/resque_adaptor'
|
3
|
-
require 'plugin/
|
4
|
-
require 'handler/
|
4
|
+
require 'plugin/resque_queue'
|
5
|
+
require 'handler/resque_handler'
|
@@ -1,14 +1,12 @@
|
|
1
|
-
require '
|
1
|
+
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Adaptor::ResqueAdaptor do
|
4
4
|
|
5
5
|
before :all do
|
6
6
|
|
7
|
-
class FakeJob < Handler::
|
7
|
+
class FakeJob < Handler::ResqueHandler
|
8
8
|
|
9
9
|
end
|
10
|
-
|
11
|
-
ROOT = LanGrove::FakeRoot.new
|
12
10
|
|
13
11
|
end
|
14
12
|
|
@@ -27,7 +25,7 @@ describe Adaptor::ResqueAdaptor do
|
|
27
25
|
|
28
26
|
:handler => {
|
29
27
|
|
30
|
-
:class => Handler::
|
28
|
+
:class => Handler::ResqueHandler,
|
31
29
|
|
32
30
|
:config => {}
|
33
31
|
|
@@ -1,6 +1,6 @@
|
|
1
|
-
require '
|
1
|
+
require 'spec_helper'
|
2
2
|
|
3
|
-
describe Handler::
|
3
|
+
describe Handler::ResqueHandler do
|
4
4
|
|
5
5
|
before :each do
|
6
6
|
|
@@ -17,7 +17,7 @@ describe Handler::ResqueJob do
|
|
17
17
|
|
18
18
|
subject {
|
19
19
|
|
20
|
-
worker = Handler::
|
20
|
+
worker = Handler::ResqueHandler.new
|
21
21
|
|
22
22
|
worker.instance_variable_set(
|
23
23
|
|
@@ -1,19 +1,9 @@
|
|
1
|
-
require '
|
1
|
+
require 'spec_helper'
|
2
2
|
|
3
|
-
describe 'Plugin::
|
3
|
+
describe 'Plugin::ResqueQueue' do
|
4
4
|
|
5
5
|
before :each do
|
6
6
|
|
7
|
-
ROOT = LanGrove::FakeRoot.new
|
8
|
-
|
9
|
-
RESQUE_DEFERRER = {
|
10
|
-
|
11
|
-
:class => 'ResqueQue',
|
12
|
-
:job => 'ResqueWorker',
|
13
|
-
:queue => :resque_queue
|
14
|
-
|
15
|
-
}
|
16
|
-
|
17
7
|
@capsule = { :stamp => 'STAMP', :data => '' }
|
18
8
|
|
19
9
|
end
|
@@ -23,7 +13,7 @@ describe 'Plugin::ResqueQue' do
|
|
23
13
|
LanGrove::ClassLoader.create( {
|
24
14
|
|
25
15
|
:module => 'Plugin',
|
26
|
-
:class => '
|
16
|
+
:class => 'ResqueQueue'
|
27
17
|
|
28
18
|
} ).new( ROOT, RESQUE_DEFERRER, nil )
|
29
19
|
|
data/spec/spec_helper.rb
ADDED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: langrove-plugin-resque
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: '0.2'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2012-07-
|
15
|
+
date: 2012-07-29 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: langrove
|
@@ -52,15 +52,21 @@ executables: []
|
|
52
52
|
extensions: []
|
53
53
|
extra_rdoc_files: []
|
54
54
|
files:
|
55
|
+
- .rvmrc
|
56
|
+
- Gemfile
|
57
|
+
- Gemfile.lock
|
58
|
+
- Guardfile
|
59
|
+
- README.md
|
60
|
+
- langrove-plugin-resque.gemspec
|
55
61
|
- lib/adaptor/resque_adaptor.rb
|
56
|
-
- lib/handler/
|
57
|
-
- lib/plugin/resque_que.rb
|
58
|
-
- spec/adaptor/resque_adaptor_spec.rb
|
59
|
-
- spec/handler/resque_job_spec.rb
|
60
|
-
- spec/plugin/resque_que_spec.rb
|
62
|
+
- lib/handler/resque_handler.rb
|
61
63
|
- lib/langrove-plugin-resque.rb
|
62
|
-
-
|
63
|
-
|
64
|
+
- lib/plugin/resque_queue.rb
|
65
|
+
- spec/adaptor/resque_adaptor_spec.rb
|
66
|
+
- spec/handler/resque_handler_spec.rb
|
67
|
+
- spec/plugin/resque_queue_spec.rb
|
68
|
+
- spec/spec_helper.rb
|
69
|
+
homepage: https://github.com/cluetechnologies/langrove-plugin-resque
|
64
70
|
licenses: []
|
65
71
|
post_install_message:
|
66
72
|
rdoc_options: []
|
@@ -83,5 +89,5 @@ rubyforge_project:
|
|
83
89
|
rubygems_version: 1.8.24
|
84
90
|
signing_key:
|
85
91
|
specification_version: 3
|
86
|
-
summary:
|
92
|
+
summary: Integrates Resque Workers and Jobs into LanGrove
|
87
93
|
test_files: []
|