Class: Gitlab::Ci::Build::AutoRetry

Inherits:
Object
  • Object
show all
Includes:
Utils::StrongMemoize
Defined in:
lib/gitlab/ci/build/auto_retry.rb

Constant Summary collapse

DEFAULT_RETRIES =
{
  scheduler_failure: 2
}.freeze
RETRY_OVERRIDES =
{
  ci_quota_exceeded: 0,
  no_matching_runner: 0,
  missing_dependency_failure: 0,
  forward_deployment_failure: 0,
  environment_creation_failure: 0
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(build) ⇒ AutoRetry

Returns a new instance of AutoRetry.



18
19
20
# File 'lib/gitlab/ci/build/auto_retry.rb', line 18

def initialize(build)
  @build = build
end

Instance Method Details

#allowed?Boolean

Returns:

  • (Boolean)


22
23
24
25
26
# File 'lib/gitlab/ci/build/auto_retry.rb', line 22

def allowed?
  return false unless @build.retryable?

  within_max_retry_limit?
end