Class: Gitlab::Ci::Build::Status::Reason

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/ci/build/status/reason.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(build, failure_reason, exit_code = nil) ⇒ Reason

Returns a new instance of Reason.



10
11
12
13
14
# File 'lib/gitlab/ci/build/status/reason.rb', line 10

def initialize(build, failure_reason, exit_code = nil)
  @build = build
  @failure_reason = failure_reason
  @exit_code = exit_code
end

Instance Attribute Details

#buildObject (readonly)

Returns the value of attribute build.



8
9
10
# File 'lib/gitlab/ci/build/status/reason.rb', line 8

def build
  @build
end

#exit_codeObject (readonly)

Returns the value of attribute exit_code.



8
9
10
# File 'lib/gitlab/ci/build/status/reason.rb', line 8

def exit_code
  @exit_code
end

#failure_reasonObject (readonly)

Returns the value of attribute failure_reason.



8
9
10
# File 'lib/gitlab/ci/build/status/reason.rb', line 8

def failure_reason
  @failure_reason
end

Class Method Details

.fabricate(build, reason) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/gitlab/ci/build/status/reason.rb', line 26

def self.fabricate(build, reason)
  if reason.is_a?(self)
    new(build, reason.failure_reason, reason.exit_code)
  else
    new(build, reason)
  end
end

Instance Method Details

#failure_reason_enumObject



16
17
18
# File 'lib/gitlab/ci/build/status/reason.rb', line 16

def failure_reason_enum
  ::CommitStatus.failure_reasons[failure_reason]
end

#force_allow_failure?Boolean

Returns:

  • (Boolean)


20
21
22
23
24
# File 'lib/gitlab/ci/build/status/reason.rb', line 20

def force_allow_failure?
  return false if exit_code.nil?

  !build.allow_failure? && build.allowed_to_fail_with_code?(exit_code)
end