shoryuken-later 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +14 -6
- data/README.md +25 -0
- data/lib/shoryuken/later/version.rb +1 -1
- data/lib/shoryuken/later/worker.rb +1 -1
- metadata +13 -13
checksums.yaml
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NTM2MDIyMmI2ODE2ODkyZDRiYTRmODZmM2U1Y2JhOGFjMGIzZjFlOQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
OTRiZWQ1N2M4MmE5MWNmZGZiZDQ2N2M3M2VhNjcxY2FhYTdiODRkNA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
ZjkwMTgzNmQ5MmUzZDBhMjUyODNhMDlmZGU5N2U4NWU3MGRlNzZkNzA2M2I0
|
10
|
+
M2YwYTY2ZjdjNTNiMGRkMzZkZDcwY2FmZTI0NjlkOTRiNjEwNTViMGM0YzA1
|
11
|
+
NmI3YjU0NWMyMmRlOTFhZDA4YzJkNzZlZThjZTM5YjRiMDMyODI=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
Nzk0ZTJkMzAyMzgwNzVmMGMxYTRjYTczNzM5NWE4NzVhZTBhODUxYzBjMzM3
|
14
|
+
ZDU5MzBhZmE0ZWNlMjEzNmY2ZThmNDBhODE5MmIyZDQwZmZjNzJmYWEzNzAw
|
15
|
+
MTM2Yjk1N2Y0OWU3M2JmOGUxODkwMTI5ODFlN2MxMDNkZmM0Mjc=
|
data/README.md
CHANGED
@@ -5,6 +5,12 @@ to delay messages arbitrarily far into the future.
|
|
5
5
|
|
6
6
|
## Features
|
7
7
|
|
8
|
+
### Supports distributed architectures
|
9
|
+
|
10
|
+
An SQS message is *only* queued if a _conditional_ delete of the DDB item is successful. This eliminates any potential race condition, so if more than one `shoryuken-later` process is polling the same schedule table then no redundant SQS messages will be queued.
|
11
|
+
|
12
|
+
NOTE: You shouldn't really _need_ to run more than one process, but if you do it will be safe.
|
13
|
+
|
8
14
|
### One or more schedule tables
|
9
15
|
|
10
16
|
Supports polling one or more DynamoDB tables for messages.
|
@@ -45,6 +51,23 @@ queues:
|
|
45
51
|
|
46
52
|
## Usage
|
47
53
|
|
54
|
+
### Starting the schedule poller
|
55
|
+
|
56
|
+
Start the `shoryuken-later` schedule poller with a command like:
|
57
|
+
|
58
|
+
```shell
|
59
|
+
bundle exec shoryuken-later --config shoryuken.yml
|
60
|
+
```
|
61
|
+
|
62
|
+
Run it as a daemon inside of your Rails app with a command like:
|
63
|
+
|
64
|
+
```shell
|
65
|
+
bundle exec shoryuken-later --config shoryuken.yml --rails --daemon
|
66
|
+
```
|
67
|
+
|
68
|
+
[Command-line options](https://github.com/joekhoobyar/shoryuken-later/wiki/Command-line-options)
|
69
|
+
|
70
|
+
|
48
71
|
### Integration with ActiveJob
|
49
72
|
|
50
73
|
A custom ActiveJob adapter can used to support delaying messages arbitrarily far into the future.
|
@@ -108,6 +131,8 @@ Or install it yourself as:
|
|
108
131
|
|
109
132
|
## Documentation
|
110
133
|
|
134
|
+
Learn about using Shoryuken::Later at the [Shoryuken::Later Wiki](https://github.com/joekhoobyar/shoryuken-later/wiki).
|
135
|
+
|
111
136
|
Learn about using Shoryuken at the [Shoryuken Wiki](https://github.com/phstc/shoryuken/wiki).
|
112
137
|
|
113
138
|
## Credits
|
@@ -7,7 +7,7 @@ module Shoryuken
|
|
7
7
|
module ClassMethods
|
8
8
|
|
9
9
|
def perform_later(time, body, options = {})
|
10
|
-
time = Time.now + time.to_i if Numeric
|
10
|
+
time = Time.now + time.to_i if time.is_a?(Numeric)
|
11
11
|
time = time.to_time if time.respond_to?(:to_time)
|
12
12
|
raise ArgumentError, 'expected Numeric, Time but got '+time.class.name unless Time===time
|
13
13
|
|
metadata
CHANGED
@@ -1,27 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shoryuken-later
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joe Khoobyar
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-03-
|
11
|
+
date: 2015-03-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - '>='
|
17
|
+
- - ! '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 1.3.5
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - '>='
|
24
|
+
- - ! '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 1.3.5
|
27
27
|
- !ruby/object:Gem::Dependency
|
@@ -62,14 +62,14 @@ dependencies:
|
|
62
62
|
name: pry-byebug
|
63
63
|
requirement: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
|
-
- - '>='
|
65
|
+
- - ! '>='
|
66
66
|
- !ruby/object:Gem::Version
|
67
67
|
version: '0'
|
68
68
|
type: :development
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
|
-
- - '>='
|
72
|
+
- - ! '>='
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '0'
|
75
75
|
- !ruby/object:Gem::Dependency
|
@@ -118,18 +118,18 @@ dependencies:
|
|
118
118
|
name: shoryuken
|
119
119
|
requirement: !ruby/object:Gem::Requirement
|
120
120
|
requirements:
|
121
|
-
- - '>'
|
121
|
+
- - ! '>'
|
122
122
|
- !ruby/object:Gem::Version
|
123
123
|
version: 0.0.5
|
124
124
|
type: :runtime
|
125
125
|
prerelease: false
|
126
126
|
version_requirements: !ruby/object:Gem::Requirement
|
127
127
|
requirements:
|
128
|
-
- - '>'
|
128
|
+
- - ! '>'
|
129
129
|
- !ruby/object:Gem::Version
|
130
130
|
version: 0.0.5
|
131
|
-
description: "\n This gem provides a scheduling plugin (using Dynamo DB) for
|
132
|
-
as well as an ActiveJob adapter\n "
|
131
|
+
description: ! "\n This gem provides a scheduling plugin (using Dynamo DB) for
|
132
|
+
Shoryuken, as well as an ActiveJob adapter\n "
|
133
133
|
email:
|
134
134
|
- joe@khoobyar.name
|
135
135
|
executables:
|
@@ -166,17 +166,17 @@ require_paths:
|
|
166
166
|
- lib
|
167
167
|
required_ruby_version: !ruby/object:Gem::Requirement
|
168
168
|
requirements:
|
169
|
-
- - '>='
|
169
|
+
- - ! '>='
|
170
170
|
- !ruby/object:Gem::Version
|
171
171
|
version: 2.0.0
|
172
172
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
173
173
|
requirements:
|
174
|
-
- - '>='
|
174
|
+
- - ! '>='
|
175
175
|
- !ruby/object:Gem::Version
|
176
176
|
version: '0'
|
177
177
|
requirements: []
|
178
178
|
rubyforge_project:
|
179
|
-
rubygems_version: 2.
|
179
|
+
rubygems_version: 2.0.3
|
180
180
|
signing_key:
|
181
181
|
specification_version: 4
|
182
182
|
summary: A scheduling plugin (using Dynamo DB) for Shoryuken
|