exercism-config 0.78.0 → 0.79.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 37e5adfdefe004d2528a29254e0e0f2ba872c846f43ef4f87df2e7a5c9fca1f4
4
- data.tar.gz: ec9223378a44a65942dfe91c26cc3ab900058071a1a5a31ccca1895dcb755d61
3
+ metadata.gz: 75f1646a6035b52f15adf8009bd1813142aacb183dd292586103ac92a3eb8bcf
4
+ data.tar.gz: e3f6555dfcce9300b2f228288e78b7024530729a84cc801e988329f76a7bc47e
5
5
  SHA512:
6
- metadata.gz: c20da1f12c29cd611d92d73c7e6dcf847dbb577601dcaa3d728d1642fb8ca9b58761114c9f2e4063f9b018412d400be9daf466f7ca37e1ece726aae212793783
7
- data.tar.gz: 5aa552a5137910b03e564775868cb52ee7afcbbba2162d32721bfaf864a1008b3be172e51c168fd3fec71e9565c73dd00f1dc965718d93992b6b42818df385a6
6
+ metadata.gz: abd507cb222e44902547f311245120a37a8ac82418dbeb405b4ffe5ca314d3d8e209c15f167e4cb358137b4406c200cbb9b83760d977bce881a22fe8ba13b0f2
7
+ data.tar.gz: f1321cdebd33b7ade32c9e7245fb48b18a2f5162aa87492a9fe9a66e24749c5155ae37ea4f2bb9d5bd94aff1578e88dd0b466ad525bb6a7ea609d1542dfe5daf
@@ -5,9 +5,11 @@ module Exercism
5
5
 
6
6
  extend Mandate::Memoize
7
7
 
8
- def self.create!(type, submission_uuid, language, exercise, extra = {})
8
+ def self.create!(type, submission_uuid, language, exercise,
9
+ run_in_background: false,
10
+ **data)
9
11
  job_id = SecureRandom.uuid.tr('-', '')
10
- data = extra.merge(
12
+ data.merge!(
11
13
  id: job_id,
12
14
  submission_uuid: submission_uuid,
13
15
  type: type,
@@ -16,13 +18,14 @@ module Exercism
16
18
  created_at: Time.now.utc.to_i
17
19
  )
18
20
 
21
+ queue_key = run_in_background ? key_for_queued_in_background : key_for_queued
19
22
  redis = Exercism.redis_tooling_client
20
23
  redis.multi do
21
24
  redis.set(
22
25
  "job:#{job_id}",
23
26
  data.to_json
24
27
  )
25
- redis.rpush(key_for_queued, job_id)
28
+ redis.rpush(queue_key, job_id)
26
29
  redis.set("submission:#{submission_uuid}:#{type}", job_id)
27
30
  end
28
31
  new(job_id, data)
@@ -164,7 +167,7 @@ module Exercism
164
167
  Exercism.config.aws_tooling_jobs_bucket
165
168
  end
166
169
 
167
- %w[queued locked executed cancelled].each do |key|
170
+ %w[queued queued_in_background locked executed cancelled].each do |key|
168
171
  ToolingJob.singleton_class.class_eval do
169
172
  define_method "key_for_#{key}" do
170
173
  Exercism.env.production? ? key : "#{Exercism.env}:#{key}"
@@ -1,3 +1,3 @@
1
1
  module ExercismConfig
2
- VERSION = '0.78.0'.freeze
2
+ VERSION = '0.79.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exercism-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.78.0
4
+ version: 0.79.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Walker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-11 00:00:00.000000000 Z
11
+ date: 2021-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-dynamodb