resque-task 0.0.1
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/.gitignore +4 -0
- data/Gemfile +4 -0
- data/README +31 -0
- data/Rakefile +3 -0
- data/lib/resque/task.rb +39 -0
- data/lib/resque/task/version.rb +5 -0
- data/resque-task.gemspec +25 -0
- metadata +95 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/README
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
Resque-task
|
2
|
+
===========
|
3
|
+
|
4
|
+
This is a gem designed to work with Resque (tested with >= 1.13.0) to facilitate easier enumeration.
|
5
|
+
|
6
|
+
Examples
|
7
|
+
--------
|
8
|
+
|
9
|
+
class SomeClass
|
10
|
+
def self.perform(name)
|
11
|
+
raise
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
Resque.enqueue(SomeClass, "Jared Fraser")
|
16
|
+
|
17
|
+
Resque::Task.failed.each do |task|
|
18
|
+
puts "Class: #{task.parent.to_s}"
|
19
|
+
puts "Arguments: #{task.args.inspect}"
|
20
|
+
puts "Failed at: #{task.failed_at}"
|
21
|
+
end
|
22
|
+
|
23
|
+
=> Class: SomeClass
|
24
|
+
=> Arguments: ["Jared Fraser"]
|
25
|
+
=> Failed at: 2011/05/26 08:45:59
|
26
|
+
|
27
|
+
|
28
|
+
Todo
|
29
|
+
----
|
30
|
+
* TESTS
|
31
|
+
* A better name.
|
data/Rakefile
ADDED
data/lib/resque/task.rb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'active_support'
|
2
|
+
require 'resque'
|
3
|
+
|
4
|
+
module Resque
|
5
|
+
class Task
|
6
|
+
attr_accessor :parent, :args
|
7
|
+
attr_accessor :queue, :payload, :exception, :error, :backtrace, :worker
|
8
|
+
attr_accessor :run_at, :failed_at, :retried_at
|
9
|
+
|
10
|
+
def initialize(options={})
|
11
|
+
options['parent'] = options.delete('class')
|
12
|
+
options.each do |opt, val|
|
13
|
+
self.send("#{opt}=", val)
|
14
|
+
end
|
15
|
+
if payload
|
16
|
+
self.parent = payload['class']
|
17
|
+
self.args = payload['args']
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def parent
|
22
|
+
@parent.constantize
|
23
|
+
end
|
24
|
+
|
25
|
+
class << self
|
26
|
+
def failed(finish=10000)
|
27
|
+
Resque::Failure.all(0, finish).map {|failure| Resque::Task.new(failure) }
|
28
|
+
end
|
29
|
+
|
30
|
+
def working(finish=10000)
|
31
|
+
Resque.working.map {|task| Resque::Task.new(task.job) }
|
32
|
+
end
|
33
|
+
|
34
|
+
def queued(finish=10000)
|
35
|
+
Resque.queues.map {|e| Resque.peek(e, 0, finish) }.flatten.map {|task| Resque::Task.new(task) }
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
data/resque-task.gemspec
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "resque/task/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "resque-task"
|
7
|
+
s.version = Resque::Task::VERSION
|
8
|
+
s.platform = Gem::Platform::RUBY
|
9
|
+
s.authors = ["Jared Fraser (modsognir)"]
|
10
|
+
s.email = ["j.fraser@modsognir.com"]
|
11
|
+
s.homepage = "http://github.com/modsognir/resque-task"
|
12
|
+
s.summary = %q{Helper for Resque jobs}
|
13
|
+
s.description = %q{Helper for listing and viewing resque tasks at their various stages}
|
14
|
+
|
15
|
+
s.rubyforge_project = "resque-task"
|
16
|
+
|
17
|
+
s.add_dependency("activesupport")
|
18
|
+
s.add_dependency("resque")
|
19
|
+
s.add_dependency("rake", "0.8.7")
|
20
|
+
|
21
|
+
s.files = `git ls-files`.split("\n")
|
22
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
23
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
24
|
+
s.require_paths = ["lib"]
|
25
|
+
end
|
metadata
ADDED
@@ -0,0 +1,95 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: resque-task
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: 0.0.1
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Jared Fraser (modsognir)
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
|
13
|
+
date: 2011-05-30 00:00:00 +10:00
|
14
|
+
default_executable:
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: activesupport
|
18
|
+
prerelease: false
|
19
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
20
|
+
none: false
|
21
|
+
requirements:
|
22
|
+
- - ">="
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: "0"
|
25
|
+
type: :runtime
|
26
|
+
version_requirements: *id001
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: resque
|
29
|
+
prerelease: false
|
30
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
31
|
+
none: false
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: "0"
|
36
|
+
type: :runtime
|
37
|
+
version_requirements: *id002
|
38
|
+
- !ruby/object:Gem::Dependency
|
39
|
+
name: rake
|
40
|
+
prerelease: false
|
41
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - "="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 0.8.7
|
47
|
+
type: :runtime
|
48
|
+
version_requirements: *id003
|
49
|
+
description: Helper for listing and viewing resque tasks at their various stages
|
50
|
+
email:
|
51
|
+
- j.fraser@modsognir.com
|
52
|
+
executables: []
|
53
|
+
|
54
|
+
extensions: []
|
55
|
+
|
56
|
+
extra_rdoc_files: []
|
57
|
+
|
58
|
+
files:
|
59
|
+
- .gitignore
|
60
|
+
- Gemfile
|
61
|
+
- README
|
62
|
+
- Rakefile
|
63
|
+
- lib/resque/task.rb
|
64
|
+
- lib/resque/task/version.rb
|
65
|
+
- resque-task.gemspec
|
66
|
+
has_rdoc: true
|
67
|
+
homepage: http://github.com/modsognir/resque-task
|
68
|
+
licenses: []
|
69
|
+
|
70
|
+
post_install_message:
|
71
|
+
rdoc_options: []
|
72
|
+
|
73
|
+
require_paths:
|
74
|
+
- lib
|
75
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
76
|
+
none: false
|
77
|
+
requirements:
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: "0"
|
81
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: "0"
|
87
|
+
requirements: []
|
88
|
+
|
89
|
+
rubyforge_project: resque-task
|
90
|
+
rubygems_version: 1.5.0
|
91
|
+
signing_key:
|
92
|
+
specification_version: 3
|
93
|
+
summary: Helper for Resque jobs
|
94
|
+
test_files: []
|
95
|
+
|