funktor 0.4.0 → 0.4.4
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.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 14aab17eb93983bb955499f188016259228524db65da3ac42355b16fc9dcc6fc
|
|
4
|
+
data.tar.gz: f144426a8f28880f50d538c1ccff935f1df06257d948106c17d10d051584934e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 49849e8195b4724d6471035ebc914556dfee9173016532117e2e5d512196d3016eee51171aaeea55a92ec1cae35699c72d740bf3c4093be8374447eba2ef54b4
|
|
7
|
+
data.tar.gz: daff2109c7cbaa42075f154b375a1263d5afe5ad5d74fb20169cbe051bb53e81dcb0a4328f012642358e5c9467f4dfe0d4e74315ce2d2f5e594db4e3af2b7009
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
funktor (0.
|
|
4
|
+
funktor (0.4.4)
|
|
5
5
|
activesupport
|
|
6
6
|
aws-sdk-sqs (~> 1.37)
|
|
7
7
|
thor
|
|
@@ -21,14 +21,14 @@ GEM
|
|
|
21
21
|
addressable (2.7.0)
|
|
22
22
|
public_suffix (>= 2.0.2, < 5.0)
|
|
23
23
|
aws-eventstream (1.1.1)
|
|
24
|
-
aws-partitions (1.
|
|
25
|
-
aws-sdk-core (3.
|
|
24
|
+
aws-partitions (1.482.0)
|
|
25
|
+
aws-sdk-core (3.119.0)
|
|
26
26
|
aws-eventstream (~> 1, >= 1.0.2)
|
|
27
27
|
aws-partitions (~> 1, >= 1.239.0)
|
|
28
28
|
aws-sigv4 (~> 1.1)
|
|
29
29
|
jmespath (~> 1.0)
|
|
30
|
-
aws-sdk-sqs (1.
|
|
31
|
-
aws-sdk-core (~> 3, >= 3.
|
|
30
|
+
aws-sdk-sqs (1.42.0)
|
|
31
|
+
aws-sdk-core (~> 3, >= 3.119.0)
|
|
32
32
|
aws-sigv4 (~> 1.1)
|
|
33
33
|
aws-sigv4 (1.2.4)
|
|
34
34
|
aws-eventstream (~> 1, >= 1.0.2)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'active_job'
|
|
4
|
+
require "funktor/worker/funktor_options"
|
|
4
5
|
|
|
5
6
|
module ActiveJob
|
|
6
7
|
module QueueAdapters
|
|
@@ -15,17 +16,22 @@ module ActiveJob
|
|
|
15
16
|
"worker" => JobWrapper.to_s,
|
|
16
17
|
"wrapped" => job.class,
|
|
17
18
|
"queue" => job.class.work_queue,
|
|
18
|
-
"
|
|
19
|
+
"delay" => 0,
|
|
20
|
+
"worker_params" => job.serialize
|
|
19
21
|
})
|
|
20
22
|
end
|
|
21
23
|
|
|
22
24
|
def enqueue_at(job, timestamp) # :nodoc:
|
|
25
|
+
delay = (Time.at(timestamp).utc - Time.now.utc).round
|
|
26
|
+
if delay < 0
|
|
27
|
+
delay = 0
|
|
28
|
+
end
|
|
23
29
|
job.provider_job_id = Funktor.job_pusher.push({
|
|
24
30
|
"worker" => JobWrapper.to_s,
|
|
25
31
|
"wrapped" => job.class,
|
|
26
32
|
"queue" => job.class.work_queue,
|
|
27
|
-
"
|
|
28
|
-
"
|
|
33
|
+
"delay" => delay,
|
|
34
|
+
"worker_params" => job.serialize
|
|
29
35
|
})
|
|
30
36
|
end
|
|
31
37
|
|
|
@@ -33,7 +39,9 @@ module ActiveJob
|
|
|
33
39
|
include Funktor::Worker
|
|
34
40
|
|
|
35
41
|
def perform(job_data)
|
|
36
|
-
|
|
42
|
+
puts "job_data = #{job_data.class}"
|
|
43
|
+
puts job_data
|
|
44
|
+
Base.execute job_data
|
|
37
45
|
end
|
|
38
46
|
end
|
|
39
47
|
end
|
data/lib/funktor/job.rb
CHANGED
|
@@ -38,7 +38,7 @@ module Funktor
|
|
|
38
38
|
# TODO - In Funktor Pro we need to override this method (or do something else) so that
|
|
39
39
|
# we can schedule jobs farther in the future than 15 minutes. We do this here in case a
|
|
40
40
|
# retry sequence goes too long.
|
|
41
|
-
jdelay = job_data["delay"]
|
|
41
|
+
jdelay = job_data["delay"] || 0
|
|
42
42
|
return jdelay < 900 ? jdelay : 900
|
|
43
43
|
end
|
|
44
44
|
|
data/lib/funktor/rails.rb
CHANGED
data/lib/funktor/version.rb
CHANGED