cloudtasker 0.12.2 → 0.13.rc1

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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/lint_rubocop.yml +20 -0
  3. data/.github/workflows/{test.yml → test_ruby_2.5_2.6.yml} +7 -8
  4. data/.github/workflows/test_ruby_2.7.yml +40 -0
  5. data/.github/workflows/test_ruby_3.x.yml +39 -0
  6. data/.rubocop.yml +5 -0
  7. data/Appraisals +20 -0
  8. data/CHANGELOG.md +9 -0
  9. data/README.md +10 -2
  10. data/Rakefile +0 -6
  11. data/cloudtasker.gemspec +0 -5
  12. data/gemfiles/google_cloud_tasks_1.0.gemfile +1 -0
  13. data/gemfiles/google_cloud_tasks_1.0.gemfile.lock +4 -173
  14. data/gemfiles/google_cloud_tasks_1.1.gemfile +1 -0
  15. data/gemfiles/google_cloud_tasks_1.1.gemfile.lock +4 -173
  16. data/gemfiles/google_cloud_tasks_1.2.gemfile +1 -0
  17. data/gemfiles/google_cloud_tasks_1.2.gemfile.lock +4 -173
  18. data/gemfiles/google_cloud_tasks_1.3.gemfile +1 -0
  19. data/gemfiles/google_cloud_tasks_1.3.gemfile.lock +4 -173
  20. data/gemfiles/rails_5.2.gemfile +1 -0
  21. data/gemfiles/rails_5.2.gemfile.lock +4 -53
  22. data/gemfiles/rails_6.0.gemfile +1 -0
  23. data/gemfiles/rails_6.0.gemfile.lock +4 -53
  24. data/gemfiles/rails_6.1.gemfile +8 -0
  25. data/gemfiles/rails_7.0.gemfile +8 -0
  26. data/gemfiles/semantic_logger_3.4.gemfile +1 -0
  27. data/gemfiles/semantic_logger_4.6.gemfile +1 -0
  28. data/gemfiles/semantic_logger_4.7.0.gemfile +1 -0
  29. data/gemfiles/semantic_logger_4.7.2.gemfile +1 -0
  30. data/lib/cloudtasker/backend/google_cloud_task.rb +12 -8
  31. data/lib/cloudtasker/backend/memory_task.rb +1 -1
  32. data/lib/cloudtasker/backend/redis_task.rb +7 -3
  33. data/lib/cloudtasker/cloud_task.rb +2 -2
  34. data/lib/cloudtasker/cron/schedule.rb +7 -7
  35. data/lib/cloudtasker/redis_client.rb +39 -14
  36. data/lib/cloudtasker/unique_job/job.rb +3 -2
  37. data/lib/cloudtasker/unique_job/middleware/client.rb +2 -1
  38. data/lib/cloudtasker/version.rb +1 -1
  39. data/lib/cloudtasker/worker.rb +3 -3
  40. data/lib/cloudtasker/worker_wrapper.rb +1 -1
  41. metadata +11 -62
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- cloudtasker (0.12.2)
4
+ cloudtasker (0.13.rc1)
5
5
  activesupport
6
6
  connection_pool
7
7
  fugit
@@ -13,60 +13,7 @@ PATH
13
13
  GEM
14
14
  remote: https://rubygems.org/
15
15
  specs:
16
- actioncable (6.1.4.4)
17
- actionpack (= 6.1.4.4)
18
- activesupport (= 6.1.4.4)
19
- nio4r (~> 2.0)
20
- websocket-driver (>= 0.6.1)
21
- actionmailbox (6.1.4.4)
22
- actionpack (= 6.1.4.4)
23
- activejob (= 6.1.4.4)
24
- activerecord (= 6.1.4.4)
25
- activestorage (= 6.1.4.4)
26
- activesupport (= 6.1.4.4)
27
- mail (>= 2.7.1)
28
- actionmailer (6.1.4.4)
29
- actionpack (= 6.1.4.4)
30
- actionview (= 6.1.4.4)
31
- activejob (= 6.1.4.4)
32
- activesupport (= 6.1.4.4)
33
- mail (~> 2.5, >= 2.5.4)
34
- rails-dom-testing (~> 2.0)
35
- actionpack (6.1.4.4)
36
- actionview (= 6.1.4.4)
37
- activesupport (= 6.1.4.4)
38
- rack (~> 2.0, >= 2.0.9)
39
- rack-test (>= 0.6.3)
40
- rails-dom-testing (~> 2.0)
41
- rails-html-sanitizer (~> 1.0, >= 1.2.0)
42
- actiontext (6.1.4.4)
43
- actionpack (= 6.1.4.4)
44
- activerecord (= 6.1.4.4)
45
- activestorage (= 6.1.4.4)
46
- activesupport (= 6.1.4.4)
47
- nokogiri (>= 1.8.5)
48
- actionview (6.1.4.4)
49
- activesupport (= 6.1.4.4)
50
- builder (~> 3.1)
51
- erubi (~> 1.4)
52
- rails-dom-testing (~> 2.0)
53
- rails-html-sanitizer (~> 1.1, >= 1.2.0)
54
- activejob (6.1.4.4)
55
- activesupport (= 6.1.4.4)
56
- globalid (>= 0.3.6)
57
- activemodel (6.1.4.4)
58
- activesupport (= 6.1.4.4)
59
- activerecord (6.1.4.4)
60
- activemodel (= 6.1.4.4)
61
- activesupport (= 6.1.4.4)
62
- activestorage (6.1.4.4)
63
- actionpack (= 6.1.4.4)
64
- activejob (= 6.1.4.4)
65
- activerecord (= 6.1.4.4)
66
- activesupport (= 6.1.4.4)
67
- marcel (~> 1.0.0)
68
- mini_mime (>= 1.1.0)
69
- activesupport (6.1.4.4)
16
+ activesupport (6.1.0)
70
17
  concurrent-ruby (~> 1.0, >= 1.0.2)
71
18
  i18n (>= 1.6, < 2)
72
19
  minitest (>= 5.1)
@@ -79,34 +26,11 @@ GEM
79
26
  rake
80
27
  thor (>= 0.14.0)
81
28
  ast (2.4.2)
82
- async (1.30.1)
83
- console (~> 1.10)
84
- nio4r (~> 2.3)
85
- timers (~> 4.1)
86
- async-http (0.56.5)
87
- async (>= 1.25)
88
- async-io (>= 1.28)
89
- async-pool (>= 0.2)
90
- protocol-http (~> 0.22.0)
91
- protocol-http1 (~> 0.14.0)
92
- protocol-http2 (~> 0.14.0)
93
- async-http-faraday (0.11.0)
94
- async-http (~> 0.42)
95
- faraday
96
- async-io (1.32.2)
97
- async
98
- async-pool (0.3.9)
99
- async (>= 1.25)
100
- builder (3.2.4)
101
29
  concurrent-ruby (1.1.9)
102
30
  connection_pool (2.2.5)
103
- console (1.14.0)
104
- fiber-local
105
31
  crack (0.4.5)
106
32
  rexml
107
- crass (1.0.6)
108
33
  diff-lcs (1.5.0)
109
- erubi (1.10.0)
110
34
  et-orbi (1.2.6)
111
35
  tzinfo
112
36
  faraday (1.8.0)
@@ -123,28 +47,14 @@ GEM
123
47
  faraday-em_http (1.0.0)
124
48
  faraday-em_synchrony (1.0.0)
125
49
  faraday-excon (1.1.0)
126
- faraday-http-cache (2.2.0)
127
- faraday (>= 0.8)
128
50
  faraday-httpclient (1.0.1)
129
51
  faraday-net_http (1.0.1)
130
52
  faraday-net_http_persistent (1.2.0)
131
53
  faraday-patron (1.0.0)
132
54
  faraday-rack (1.0.0)
133
- fiber-local (1.0.0)
134
55
  fugit (1.5.2)
135
56
  et-orbi (~> 1.1, >= 1.1.8)
136
57
  raabro (~> 1.4)
137
- github_changelog_generator (1.16.4)
138
- activesupport
139
- async (>= 1.25.0)
140
- async-http-faraday
141
- faraday-http-cache
142
- multi_json
143
- octokit (~> 4.6)
144
- rainbow (>= 2.2.1)
145
- rake (>= 10.0)
146
- globalid (1.0.0)
147
- activesupport (>= 5.0)
148
58
  google-cloud-tasks (1.3.0)
149
59
  google-gax (~> 1.8)
150
60
  googleapis-common-protos (>= 1.3.9, < 2.0)
@@ -183,69 +93,16 @@ GEM
183
93
  concurrent-ruby (~> 1.0)
184
94
  jaro_winkler (1.5.4)
185
95
  jwt (2.3.0)
186
- loofah (2.13.0)
187
- crass (~> 1.0.2)
188
- nokogiri (>= 1.5.9)
189
- mail (2.7.1)
190
- mini_mime (>= 0.1.1)
191
- marcel (1.0.2)
192
96
  memoist (0.16.2)
193
- method_source (1.0.0)
194
- mini_mime (1.1.2)
195
- mini_portile2 (2.6.1)
196
97
  minitest (5.15.0)
197
98
  multi_json (1.15.0)
198
99
  multipart-post (2.1.1)
199
- nio4r (2.5.8)
200
- nokogiri (1.12.5)
201
- mini_portile2 (~> 2.6.1)
202
- racc (~> 1.4)
203
- octokit (4.21.0)
204
- faraday (>= 0.9)
205
- sawyer (~> 0.8.0, >= 0.5.3)
206
100
  os (1.1.4)
207
101
  parallel (1.21.0)
208
102
  parser (3.0.3.2)
209
103
  ast (~> 2.4.1)
210
- protocol-hpack (1.4.2)
211
- protocol-http (0.22.5)
212
- protocol-http1 (0.14.2)
213
- protocol-http (~> 0.22)
214
- protocol-http2 (0.14.2)
215
- protocol-hpack (~> 1.4)
216
- protocol-http (~> 0.18)
217
104
  public_suffix (4.0.6)
218
105
  raabro (1.4.0)
219
- racc (1.6.0)
220
- rack (2.2.3)
221
- rack-test (1.1.0)
222
- rack (>= 1.0, < 3)
223
- rails (6.1.4.4)
224
- actioncable (= 6.1.4.4)
225
- actionmailbox (= 6.1.4.4)
226
- actionmailer (= 6.1.4.4)
227
- actionpack (= 6.1.4.4)
228
- actiontext (= 6.1.4.4)
229
- actionview (= 6.1.4.4)
230
- activejob (= 6.1.4.4)
231
- activemodel (= 6.1.4.4)
232
- activerecord (= 6.1.4.4)
233
- activestorage (= 6.1.4.4)
234
- activesupport (= 6.1.4.4)
235
- bundler (>= 1.15.0)
236
- railties (= 6.1.4.4)
237
- sprockets-rails (>= 2.0.0)
238
- rails-dom-testing (2.0.3)
239
- activesupport (>= 4.2.0)
240
- nokogiri (>= 1.6)
241
- rails-html-sanitizer (1.4.2)
242
- loofah (~> 2.3)
243
- railties (6.1.4.4)
244
- actionpack (= 6.1.4.4)
245
- activesupport (= 6.1.4.4)
246
- method_source
247
- rake (>= 0.13)
248
- thor (~> 1.0)
249
106
  rainbow (3.0.0)
250
107
  rake (13.0.6)
251
108
  redis (4.5.1)
@@ -265,14 +122,6 @@ GEM
265
122
  rspec-mocks (3.10.2)
266
123
  diff-lcs (>= 1.2.0, < 2.0)
267
124
  rspec-support (~> 3.10.0)
268
- rspec-rails (5.0.2)
269
- actionpack (>= 5.2)
270
- activesupport (>= 5.2)
271
- railties (>= 5.2)
272
- rspec-core (~> 3.10)
273
- rspec-expectations (~> 3.10)
274
- rspec-mocks (~> 3.10)
275
- rspec-support (~> 3.10)
276
125
  rspec-support (3.10.3)
277
126
  rubocop (0.76.0)
278
127
  jaro_winkler (~> 1.5.1)
@@ -285,9 +134,6 @@ GEM
285
134
  rubocop (>= 0.68.1)
286
135
  ruby-progressbar (1.11.0)
287
136
  ruby2_keywords (0.0.5)
288
- sawyer (0.8.2)
289
- addressable (>= 2.3.5)
290
- faraday (> 0.8, < 2.0)
291
137
  semantic_logger (4.9.0)
292
138
  concurrent-ruby (~> 1.0)
293
139
  signet (0.16.0)
@@ -295,17 +141,8 @@ GEM
295
141
  faraday (>= 0.17.3, < 2.0)
296
142
  jwt (>= 1.5, < 3.0)
297
143
  multi_json (~> 1.10)
298
- sprockets (4.0.2)
299
- concurrent-ruby (~> 1.0)
300
- rack (> 1, < 3)
301
- sprockets-rails (3.4.2)
302
- actionpack (>= 5.2)
303
- activesupport (>= 5.2)
304
- sprockets (>= 3.0.0)
305
- sqlite3 (1.4.2)
306
144
  thor (1.1.0)
307
145
  timecop (0.9.4)
308
- timers (4.3.3)
309
146
  tzinfo (2.0.4)
310
147
  concurrent-ruby (~> 1.0)
311
148
  unicode-display_width (1.6.1)
@@ -313,31 +150,25 @@ GEM
313
150
  addressable (>= 2.8.0)
314
151
  crack (>= 0.3.2)
315
152
  hashdiff (>= 0.4.0, < 2.0.0)
316
- websocket-driver (0.7.5)
317
- websocket-extensions (>= 0.1.0)
318
- websocket-extensions (0.1.5)
319
153
  zeitwerk (2.5.3)
320
154
 
321
155
  PLATFORMS
322
156
  ruby
323
157
 
324
158
  DEPENDENCIES
159
+ activesupport (= 6.1)
325
160
  appraisal
326
161
  bundler (~> 2.0)
327
162
  cloudtasker!
328
- github_changelog_generator
329
163
  google-cloud-tasks (= 1.3)
330
- rails
331
164
  rake (>= 12.3.3)
332
165
  rspec (~> 3.0)
333
166
  rspec-json_expectations (~> 2.2)
334
- rspec-rails
335
167
  rubocop (= 0.76.0)
336
168
  rubocop-rspec (= 1.37.0)
337
169
  semantic_logger
338
- sqlite3
339
170
  timecop
340
171
  webmock
341
172
 
342
173
  BUNDLED WITH
343
- 2.2.26
174
+ 2.3.4
@@ -3,5 +3,6 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rails", "5.2"
6
+ gem "rspec-rails"
6
7
 
7
8
  gemspec path: "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- cloudtasker (0.12.2)
4
+ cloudtasker (0.13.rc1)
5
5
  activesupport
6
6
  connection_pool
7
7
  fugit
@@ -62,29 +62,9 @@ GEM
62
62
  thor (>= 0.14.0)
63
63
  arel (9.0.0)
64
64
  ast (2.4.2)
65
- async (1.30.1)
66
- console (~> 1.10)
67
- nio4r (~> 2.3)
68
- timers (~> 4.1)
69
- async-http (0.56.5)
70
- async (>= 1.25)
71
- async-io (>= 1.28)
72
- async-pool (>= 0.2)
73
- protocol-http (~> 0.22.0)
74
- protocol-http1 (~> 0.14.0)
75
- protocol-http2 (~> 0.14.0)
76
- async-http-faraday (0.11.0)
77
- async-http (~> 0.42)
78
- faraday
79
- async-io (1.32.2)
80
- async
81
- async-pool (0.3.9)
82
- async (>= 1.25)
83
65
  builder (3.2.4)
84
66
  concurrent-ruby (1.1.9)
85
67
  connection_pool (2.2.5)
86
- console (1.14.0)
87
- fiber-local
88
68
  crack (0.4.5)
89
69
  rexml
90
70
  crass (1.0.6)
@@ -106,26 +86,14 @@ GEM
106
86
  faraday-em_http (1.0.0)
107
87
  faraday-em_synchrony (1.0.0)
108
88
  faraday-excon (1.1.0)
109
- faraday-http-cache (2.2.0)
110
- faraday (>= 0.8)
111
89
  faraday-httpclient (1.0.1)
112
90
  faraday-net_http (1.0.1)
113
91
  faraday-net_http_persistent (1.2.0)
114
92
  faraday-patron (1.0.0)
115
93
  faraday-rack (1.0.0)
116
- fiber-local (1.0.0)
117
94
  fugit (1.5.2)
118
95
  et-orbi (~> 1.1, >= 1.1.8)
119
96
  raabro (~> 1.4)
120
- github_changelog_generator (1.16.4)
121
- activesupport
122
- async (>= 1.25.0)
123
- async-http-faraday
124
- faraday-http-cache
125
- multi_json
126
- octokit (~> 4.6)
127
- rainbow (>= 2.2.1)
128
- rake (>= 10.0)
129
97
  globalid (1.0.0)
130
98
  activesupport (>= 5.0)
131
99
  google-cloud-tasks (1.5.1)
@@ -140,7 +108,7 @@ GEM
140
108
  googleauth (~> 0.9)
141
109
  grpc (~> 1.24)
142
110
  rly (~> 0.2.3)
143
- google-protobuf (3.19.1)
111
+ google-protobuf (3.19.1-x86_64-darwin)
144
112
  googleapis-common-protos (1.3.12)
145
113
  google-protobuf (~> 3.14)
146
114
  googleapis-common-protos-types (~> 1.2)
@@ -154,7 +122,7 @@ GEM
154
122
  multi_json (~> 1.11)
155
123
  os (>= 0.9, < 2.0)
156
124
  signet (~> 0.15)
157
- grpc (1.42.0)
125
+ grpc (1.42.0-x86_64-darwin)
158
126
  google-protobuf (~> 3.18)
159
127
  googleapis-common-protos-types (~> 1.0)
160
128
  grpc-google-iam-v1 (0.6.11)
@@ -187,20 +155,10 @@ GEM
187
155
  nokogiri (1.12.5)
188
156
  mini_portile2 (~> 2.6.1)
189
157
  racc (~> 1.4)
190
- octokit (4.21.0)
191
- faraday (>= 0.9)
192
- sawyer (~> 0.8.0, >= 0.5.3)
193
158
  os (1.1.4)
194
159
  parallel (1.21.0)
195
160
  parser (3.0.3.2)
196
161
  ast (~> 2.4.1)
197
- protocol-hpack (1.4.2)
198
- protocol-http (0.22.5)
199
- protocol-http1 (0.14.2)
200
- protocol-http (~> 0.22)
201
- protocol-http2 (0.14.2)
202
- protocol-hpack (~> 1.4)
203
- protocol-http (~> 0.18)
204
162
  public_suffix (4.0.6)
205
163
  raabro (1.4.0)
206
164
  racc (1.6.0)
@@ -270,9 +228,6 @@ GEM
270
228
  rubocop (>= 0.68.1)
271
229
  ruby-progressbar (1.11.0)
272
230
  ruby2_keywords (0.0.5)
273
- sawyer (0.8.2)
274
- addressable (>= 2.3.5)
275
- faraday (> 0.8, < 2.0)
276
231
  semantic_logger (4.9.0)
277
232
  concurrent-ruby (~> 1.0)
278
233
  signet (0.16.0)
@@ -287,11 +242,9 @@ GEM
287
242
  actionpack (>= 5.2)
288
243
  activesupport (>= 5.2)
289
244
  sprockets (>= 3.0.0)
290
- sqlite3 (1.4.2)
291
245
  thor (1.1.0)
292
246
  thread_safe (0.3.6)
293
247
  timecop (0.9.4)
294
- timers (4.3.3)
295
248
  tzinfo (1.2.9)
296
249
  thread_safe (~> 0.1)
297
250
  unicode-display_width (1.6.1)
@@ -310,7 +263,6 @@ DEPENDENCIES
310
263
  appraisal
311
264
  bundler (~> 2.0)
312
265
  cloudtasker!
313
- github_changelog_generator
314
266
  rails (= 5.2)
315
267
  rake (>= 12.3.3)
316
268
  rspec (~> 3.0)
@@ -319,9 +271,8 @@ DEPENDENCIES
319
271
  rubocop (= 0.76.0)
320
272
  rubocop-rspec (= 1.37.0)
321
273
  semantic_logger
322
- sqlite3
323
274
  timecop
324
275
  webmock
325
276
 
326
277
  BUNDLED WITH
327
- 2.2.26
278
+ 2.3.4
@@ -3,5 +3,6 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rails", "6.0"
6
+ gem "rspec-rails"
6
7
 
7
8
  gemspec path: "../"
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- cloudtasker (0.12.2)
4
+ cloudtasker (0.13.rc1)
5
5
  activesupport
6
6
  connection_pool
7
7
  fugit
@@ -75,29 +75,9 @@ GEM
75
75
  rake
76
76
  thor (>= 0.14.0)
77
77
  ast (2.4.2)
78
- async (1.30.1)
79
- console (~> 1.10)
80
- nio4r (~> 2.3)
81
- timers (~> 4.1)
82
- async-http (0.56.5)
83
- async (>= 1.25)
84
- async-io (>= 1.28)
85
- async-pool (>= 0.2)
86
- protocol-http (~> 0.22.0)
87
- protocol-http1 (~> 0.14.0)
88
- protocol-http2 (~> 0.14.0)
89
- async-http-faraday (0.11.0)
90
- async-http (~> 0.42)
91
- faraday
92
- async-io (1.32.2)
93
- async
94
- async-pool (0.3.9)
95
- async (>= 1.25)
96
78
  builder (3.2.4)
97
79
  concurrent-ruby (1.1.9)
98
80
  connection_pool (2.2.5)
99
- console (1.14.0)
100
- fiber-local
101
81
  crack (0.4.5)
102
82
  rexml
103
83
  crass (1.0.6)
@@ -119,26 +99,14 @@ GEM
119
99
  faraday-em_http (1.0.0)
120
100
  faraday-em_synchrony (1.0.0)
121
101
  faraday-excon (1.1.0)
122
- faraday-http-cache (2.2.0)
123
- faraday (>= 0.8)
124
102
  faraday-httpclient (1.0.1)
125
103
  faraday-net_http (1.0.1)
126
104
  faraday-net_http_persistent (1.2.0)
127
105
  faraday-patron (1.0.0)
128
106
  faraday-rack (1.0.0)
129
- fiber-local (1.0.0)
130
107
  fugit (1.5.2)
131
108
  et-orbi (~> 1.1, >= 1.1.8)
132
109
  raabro (~> 1.4)
133
- github_changelog_generator (1.16.4)
134
- activesupport
135
- async (>= 1.25.0)
136
- async-http-faraday
137
- faraday-http-cache
138
- multi_json
139
- octokit (~> 4.6)
140
- rainbow (>= 2.2.1)
141
- rake (>= 10.0)
142
110
  globalid (1.0.0)
143
111
  activesupport (>= 5.0)
144
112
  google-cloud-tasks (1.5.1)
@@ -153,7 +121,7 @@ GEM
153
121
  googleauth (~> 0.9)
154
122
  grpc (~> 1.24)
155
123
  rly (~> 0.2.3)
156
- google-protobuf (3.19.1)
124
+ google-protobuf (3.19.1-x86_64-darwin)
157
125
  googleapis-common-protos (1.3.12)
158
126
  google-protobuf (~> 3.14)
159
127
  googleapis-common-protos-types (~> 1.2)
@@ -167,7 +135,7 @@ GEM
167
135
  multi_json (~> 1.11)
168
136
  os (>= 0.9, < 2.0)
169
137
  signet (~> 0.15)
170
- grpc (1.42.0)
138
+ grpc (1.42.0-x86_64-darwin)
171
139
  google-protobuf (~> 3.18)
172
140
  googleapis-common-protos-types (~> 1.0)
173
141
  grpc-google-iam-v1 (0.6.11)
@@ -200,20 +168,10 @@ GEM
200
168
  nokogiri (1.12.5)
201
169
  mini_portile2 (~> 2.6.1)
202
170
  racc (~> 1.4)
203
- octokit (4.21.0)
204
- faraday (>= 0.9)
205
- sawyer (~> 0.8.0, >= 0.5.3)
206
171
  os (1.1.4)
207
172
  parallel (1.21.0)
208
173
  parser (3.0.3.2)
209
174
  ast (~> 2.4.1)
210
- protocol-hpack (1.4.2)
211
- protocol-http (0.22.5)
212
- protocol-http1 (0.14.2)
213
- protocol-http (~> 0.22)
214
- protocol-http2 (0.14.2)
215
- protocol-hpack (~> 1.4)
216
- protocol-http (~> 0.18)
217
175
  public_suffix (4.0.6)
218
176
  raabro (1.4.0)
219
177
  racc (1.6.0)
@@ -285,9 +243,6 @@ GEM
285
243
  rubocop (>= 0.68.1)
286
244
  ruby-progressbar (1.11.0)
287
245
  ruby2_keywords (0.0.5)
288
- sawyer (0.8.2)
289
- addressable (>= 2.3.5)
290
- faraday (> 0.8, < 2.0)
291
246
  semantic_logger (4.9.0)
292
247
  concurrent-ruby (~> 1.0)
293
248
  signet (0.16.0)
@@ -302,11 +257,9 @@ GEM
302
257
  actionpack (>= 5.2)
303
258
  activesupport (>= 5.2)
304
259
  sprockets (>= 3.0.0)
305
- sqlite3 (1.4.2)
306
260
  thor (1.1.0)
307
261
  thread_safe (0.3.6)
308
262
  timecop (0.9.4)
309
- timers (4.3.3)
310
263
  tzinfo (1.2.9)
311
264
  thread_safe (~> 0.1)
312
265
  unicode-display_width (1.6.1)
@@ -326,7 +279,6 @@ DEPENDENCIES
326
279
  appraisal
327
280
  bundler (~> 2.0)
328
281
  cloudtasker!
329
- github_changelog_generator
330
282
  rails (= 6.0)
331
283
  rake (>= 12.3.3)
332
284
  rspec (~> 3.0)
@@ -335,9 +287,8 @@ DEPENDENCIES
335
287
  rubocop (= 0.76.0)
336
288
  rubocop-rspec (= 1.37.0)
337
289
  semantic_logger
338
- sqlite3
339
290
  timecop
340
291
  webmock
341
292
 
342
293
  BUNDLED WITH
343
- 2.2.26
294
+ 2.3.4
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rails", "6.1"
6
+ gem "rspec-rails"
7
+
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rails", "7.0"
6
+ gem "rspec-rails"
7
+
8
+ gemspec path: "../"
@@ -2,6 +2,7 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
+ gem "activesupport", "6.1"
5
6
  gem "semantic_logger", "3.4.1"
6
7
 
7
8
  gemspec path: "../"
@@ -2,6 +2,7 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
+ gem "activesupport", "6.1"
5
6
  gem "semantic_logger", "4.6.1"
6
7
 
7
8
  gemspec path: "../"
@@ -2,6 +2,7 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
+ gem "activesupport", "6.1"
5
6
  gem "semantic_logger", "4.7.0"
6
7
 
7
8
  gemspec path: "../"
@@ -2,6 +2,7 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
+ gem "activesupport", "6.1"
5
6
  gem "semantic_logger", "4.7.2"
6
7
 
7
8
  gemspec path: "../"
@@ -12,28 +12,32 @@ module Cloudtasker
12
12
  #
13
13
  # Create the queue configured in Cloudtasker if it does not already exist.
14
14
  #
15
- # @param [String] queue_name The relative name of the queue.
15
+ # @param [String] :name The queue name
16
+ # @param [Integer] :concurrency The queue concurrency
17
+ # @param [Integer] :retries The number of retries for the queue
16
18
  #
17
19
  # @return [Google::Cloud::Tasks::V2beta3::Queue] The queue
18
20
  #
19
- def self.setup_queue(**opts)
21
+ def self.setup_queue(name: nil, concurrency: nil, retries: nil)
20
22
  # Build full queue path
21
- queue_name = opts[:name] || Cloudtasker::Config::DEFAULT_JOB_QUEUE
23
+ queue_name = name || Cloudtasker::Config::DEFAULT_JOB_QUEUE
22
24
  full_queue_name = queue_path(queue_name)
23
25
 
24
26
  # Try to get existing queue
25
27
  client.get_queue(full_queue_name)
26
28
  rescue Google::Gax::RetryError
27
29
  # Extract options
28
- concurrency = (opts[:concurrency] || Cloudtasker::Config::DEFAULT_QUEUE_CONCURRENCY).to_i
29
- retries = (opts[:retries] || Cloudtasker::Config::DEFAULT_QUEUE_RETRIES).to_i
30
+ queue_concurrency = (concurrency || Cloudtasker::Config::DEFAULT_QUEUE_CONCURRENCY).to_i
31
+ queue_retries = (retries || Cloudtasker::Config::DEFAULT_QUEUE_RETRIES).to_i
30
32
 
31
33
  # Create queue on 'not found' error
32
34
  client.create_queue(
33
35
  client.location_path(config.gcp_project_id, config.gcp_location_id),
34
- name: full_queue_name,
35
- retry_config: { max_attempts: retries },
36
- rate_limits: { max_concurrent_dispatches: concurrency }
36
+ {
37
+ name: full_queue_name,
38
+ retry_config: { max_attempts: queue_retries },
39
+ rate_limits: { max_concurrent_dispatches: queue_concurrency }
40
+ }
37
41
  )
38
42
  end
39
43
 
@@ -62,7 +62,7 @@ module Cloudtasker
62
62
  payload = payload.merge(schedule_time: payload[:schedule_time].to_i)
63
63
 
64
64
  # Save task
65
- task = new(payload.merge(id: id))
65
+ task = new(**payload.merge(id: id))
66
66
  queue << task
67
67
 
68
68
  # Execute task immediately if in testing and inline mode enabled