sidekiq-scheduler 2.1.3 → 2.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -5
- data/lib/sidekiq-scheduler/rufus_utils.rb +2 -2
- data/lib/sidekiq-scheduler/schedule.rb +3 -2
- data/lib/sidekiq-scheduler/utils.rb +44 -0
- data/lib/sidekiq-scheduler/version.rb +1 -1
- data/web/locales/de.yml +13 -0
- metadata +4 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 319bbbd230c5e980c19cc64fc01b75e2a7ecfffd
|
4
|
+
data.tar.gz: 0225011ead92c866aae7096e54527d9f1ebc67ed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 945f09111baa0157ccb51bac0d7c09acb0702edfb3b94104e55320d59e1fa5603157670e5de28b29a9d5934a7815b6c93015e99329534651252235572b17a85e
|
7
|
+
data.tar.gz: 214380d3128ab3e322450eb4aa7957aa925440afcf346abaf623071ac884e0ef50cb2ba5ddfa0a002b1534a782bd4572daaded19c878c3573011b53abbdd4a36
|
data/README.md
CHANGED
@@ -58,7 +58,7 @@ end
|
|
58
58
|
|
59
59
|
:schedule:
|
60
60
|
hello_world:
|
61
|
-
|
61
|
+
cron: '0 * * * * *' # Runs once per minute
|
62
62
|
class: HelloWorld
|
63
63
|
```
|
64
64
|
|
@@ -104,10 +104,10 @@ The schedule is configured through the `:schedule` config entry in the sidekiq c
|
|
104
104
|
``` yaml
|
105
105
|
:schedule:
|
106
106
|
CancelAbandonedOrders:
|
107
|
-
|
107
|
+
cron: '0 */5 * * * *' # Runs when second = 0, every 5 minutes
|
108
108
|
|
109
109
|
queue_documents_for_indexing:
|
110
|
-
|
110
|
+
cron: '0 0 * * * *' # Runs every hour
|
111
111
|
|
112
112
|
# By default the job name will be taken as worker class name.
|
113
113
|
# If you want to have a different job name and class name, provide the 'class' option
|
@@ -284,8 +284,8 @@ ActiveSupport::TimeZone.find_tzinfo(Rails.configuration.time_zone).name
|
|
284
284
|
|
285
285
|
## Notes about running on Multiple Hosts
|
286
286
|
|
287
|
-
`cron` and `at` jobs are pushed once
|
288
|
-
assumming that time deltas between hosts is
|
287
|
+
`cron` and `at` jobs are pushed once regardless of the number of `sidekiq-scheduler` running instances,
|
288
|
+
assumming that time deltas between hosts is less than 24 hours.
|
289
289
|
|
290
290
|
`every`, `interval` and `in` jobs will be pushed once per host.
|
291
291
|
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'sidekiq-scheduler/utils'
|
2
2
|
|
3
3
|
module SidekiqScheduler
|
4
4
|
class RufusUtils
|
@@ -20,7 +20,7 @@ module SidekiqScheduler
|
|
20
20
|
opts = {}
|
21
21
|
end
|
22
22
|
|
23
|
-
opts =
|
23
|
+
opts = SidekiqScheduler::Utils.symbolize_keys(opts)
|
24
24
|
|
25
25
|
return schedule, opts
|
26
26
|
end
|
@@ -1,6 +1,7 @@
|
|
1
|
-
require 'hashie'
|
2
1
|
require 'json'
|
3
2
|
|
3
|
+
require 'sidekiq-scheduler/utils'
|
4
|
+
|
4
5
|
module SidekiqScheduler
|
5
6
|
module Schedule
|
6
7
|
|
@@ -117,7 +118,7 @@ module SidekiqScheduler
|
|
117
118
|
private
|
118
119
|
|
119
120
|
def prepare_schedule(schedule_hash)
|
120
|
-
schedule_hash =
|
121
|
+
schedule_hash = SidekiqScheduler::Utils.stringify_keys(schedule_hash)
|
121
122
|
|
122
123
|
prepared_hash = {}
|
123
124
|
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require 'set'
|
2
|
+
|
3
|
+
module SidekiqScheduler
|
4
|
+
module Utils
|
5
|
+
|
6
|
+
# Stringify keys belonging to a hash.
|
7
|
+
#
|
8
|
+
# Also stringifies nested keys and keys of hashes inside arrays, and sets
|
9
|
+
#
|
10
|
+
# @param [Object] object
|
11
|
+
#
|
12
|
+
# @return [Object]
|
13
|
+
def self.stringify_keys(object)
|
14
|
+
if object.is_a?(Hash)
|
15
|
+
Hash[[*object.map { |k, v| [k.to_s, stringify_keys(v) ]} ]]
|
16
|
+
|
17
|
+
elsif object.is_a?(Array) || object.is_a?(Set)
|
18
|
+
object.map { |v| stringify_keys(v) }
|
19
|
+
|
20
|
+
else
|
21
|
+
object
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
# Symbolize keys belonging to a hash.
|
26
|
+
#
|
27
|
+
# Also symbolizes nested keys and keys of hashes inside arrays, and sets
|
28
|
+
#
|
29
|
+
# @param [Object] object
|
30
|
+
#
|
31
|
+
# @return [Object]
|
32
|
+
def self.symbolize_keys(object)
|
33
|
+
if object.is_a?(Hash)
|
34
|
+
Hash[[*object.map { |k, v| [k.to_sym, symbolize_keys(v) ]} ]]
|
35
|
+
|
36
|
+
elsif object.is_a?(Array) || object.is_a?(Set)
|
37
|
+
object.map { |v| symbolize_keys(v) }
|
38
|
+
|
39
|
+
else
|
40
|
+
object
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
data/web/locales/de.yml
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
de:
|
2
|
+
recurring_jobs: Wiederkehrende Jobs
|
3
|
+
name: Name
|
4
|
+
description: Beschreibung
|
5
|
+
interval: Intervall
|
6
|
+
class: Klasse
|
7
|
+
queue: Warteschlange
|
8
|
+
arguments: Argumente
|
9
|
+
enqueue_now: Jetzt hinzufügen
|
10
|
+
next_time: Nächste Ausführung
|
11
|
+
no_next_time: Keine zukünftige Ausführung für diesen Job
|
12
|
+
disable: Deaktivieren
|
13
|
+
enable: Aktivieren
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sidekiq-scheduler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.
|
4
|
+
version: 2.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Morton Jonuschat
|
@@ -9,22 +9,8 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-05-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: hashie
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
requirements:
|
18
|
-
- - "~>"
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: '3.4'
|
21
|
-
type: :runtime
|
22
|
-
prerelease: false
|
23
|
-
version_requirements: !ruby/object:Gem::Requirement
|
24
|
-
requirements:
|
25
|
-
- - "~>"
|
26
|
-
- !ruby/object:Gem::Version
|
27
|
-
version: '3.4'
|
28
14
|
- !ruby/object:Gem::Dependency
|
29
15
|
name: sidekiq
|
30
16
|
requirement: !ruby/object:Gem::Requirement
|
@@ -251,10 +237,12 @@ files:
|
|
251
237
|
- lib/sidekiq-scheduler/manager.rb
|
252
238
|
- lib/sidekiq-scheduler/rufus_utils.rb
|
253
239
|
- lib/sidekiq-scheduler/schedule.rb
|
240
|
+
- lib/sidekiq-scheduler/utils.rb
|
254
241
|
- lib/sidekiq-scheduler/version.rb
|
255
242
|
- lib/sidekiq-scheduler/web.rb
|
256
243
|
- lib/sidekiq/scheduler.rb
|
257
244
|
- web/locales/cs.yml
|
245
|
+
- web/locales/de.yml
|
258
246
|
- web/locales/en.yml
|
259
247
|
- web/locales/es.yml
|
260
248
|
- web/locales/zh-cn.yml
|