ci-queue 0.102.0 → 0.103.0

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: 24f5d0ca5b0d0391a953c6f0014635eec1b6ea541e7ac46a944ac413952777e0
4
- data.tar.gz: aeec01bc647d5fb960449d57362cc6961479f5c6da78177c915c35bd9706f861
3
+ metadata.gz: 1a24e0e7c59b26262d59f97421542552b81673905d038ee4837fc44089d8afa5
4
+ data.tar.gz: 4cd6ce3732169a49fa31827b78c34b65cf1ade9d5b4fd34cc482e5ea58b5a62e
5
5
  SHA512:
6
- metadata.gz: 896cb4ac3e81d1235581e11ce6a0693565c6089afc441546a94d7211eab24b538279dfd6eb5abe06d7e3187e1b54bfb0f5d4127baa06d49a12baf181b345a444
7
- data.tar.gz: 0be6036f02910f31672c28e2d6c6eb4cdbd41f066ffb499eed8e10990b2a7a8e6d596ecf9c3da5c57c574fc0a76ac73b430d447781c2929f615a2aa669ecbe74
6
+ metadata.gz: de7c8c8424d801685d67a7ea723edff6269f52e6d57a54f48d88cbaccb394d2ce53e84a2434b36852f635396b1241f25c9bb15b4199f13bf4c25c9b680cabd8f
7
+ data.tar.gz: 58d984a94ce049dccaf0ccb48b6602f208dc4e0bff39a3502b9b83010450c2443fdfeaebbd33ceb332c75594f6243fbde98c75f63d1a36551e44347e2b790a9c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ci-queue (0.102.0)
4
+ ci-queue (0.103.0)
5
5
  logger
6
6
 
7
7
  GEM
@@ -2,7 +2,7 @@
2
2
 
3
3
  module CI
4
4
  module Queue
5
- VERSION = '0.102.0'
5
+ VERSION = '0.103.0'
6
6
  DEV_SCRIPTS_ROOT = ::File.expand_path('../../../../../redis', __FILE__)
7
7
  RELEASE_SCRIPTS_ROOT = ::File.expand_path('../redis', __FILE__)
8
8
  end
@@ -103,6 +103,7 @@ module Minitest
103
103
  trap('TERM') { Minitest.queue.shutdown! }
104
104
  trap('INT') { Minitest.queue.shutdown! }
105
105
 
106
+ queue_prepared = false
106
107
  if queue.rescue_connection_errors { queue.exhausted? }
107
108
  puts green('All tests were ran already')
108
109
  else
@@ -117,9 +118,11 @@ module Minitest
117
118
  puts green("Queue almost empty, exiting early...")
118
119
  else
119
120
  prepare_queue_for_execution
121
+ queue_prepared = true
120
122
  end
121
123
  else
122
124
  prepare_queue_for_execution
125
+ queue_prepared = true
123
126
  end
124
127
  end
125
128
 
@@ -132,8 +135,13 @@ module Minitest
132
135
  # Re-check exhausted? after booting: slow workers may arrive after the queue
133
136
  # has been fully drained by faster workers. In that case exit cleanly (0)
134
137
  # rather than letting Minitest return false for a 0-test run.
135
- if queue.rescue_connection_errors { queue.exhausted? }
136
- puts green('All tests were ran already')
138
+ #
139
+ # Also exit when the queue wasn't prepared above, because it was exhausted
140
+ # or a retried worker found it almost empty. No tests were loaded and the
141
+ # queue can't resolve entries, so the first test this worker reserved would
142
+ # crash it.
143
+ if !queue_prepared || queue.rescue_connection_errors { queue.exhausted? }
144
+ puts green('All tests were ran already') if queue_prepared
137
145
  verify_reporters!(reporters)
138
146
  exit!(0)
139
147
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ci-queue
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.102.0
4
+ version: 0.103.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean Boussier
@@ -319,7 +319,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
319
319
  - !ruby/object:Gem::Version
320
320
  version: '0'
321
321
  requirements: []
322
- rubygems_version: 4.0.21
322
+ rubygems_version: 4.0.22
323
323
  specification_version: 4
324
324
  summary: Distribute tests over many workers using a queue
325
325
  test_files: []