class CI::Queue::CircuitBreaker::MaxConsecutiveFailures

Public Class Methods

new(max_consecutive_failures:) click to toggle source
# File lib/ci/queue/circuit_breaker.rb, line 54
def initialize(max_consecutive_failures:)
  @max = max_consecutive_failures
  @consecutive_failures = 0
end

Public Instance Methods

message() click to toggle source
# File lib/ci/queue/circuit_breaker.rb, line 71
def message
  'This worker is exiting early because it encountered too many consecutive test failures, probably because of some corrupted state.'
end
open?() click to toggle source
# File lib/ci/queue/circuit_breaker.rb, line 67
def open?
  @consecutive_failures >= @max
end
report_failure!() click to toggle source
# File lib/ci/queue/circuit_breaker.rb, line 59
def report_failure!
  @consecutive_failures += 1
end
report_success!() click to toggle source
# File lib/ci/queue/circuit_breaker.rb, line 63
def report_success!
  @consecutive_failures = 0
end