40 lines
973 B
Ruby
40 lines
973 B
Ruby
module Gitlab
|
|
module Ci
|
|
module Status
|
|
module Build
|
|
class Failed < Status::Extended
|
|
REASONS = {
|
|
'unknown_failure' => 'unknown failure',
|
|
'script_failure' => 'script failure',
|
|
'api_failure' => 'API failure',
|
|
'stuck_or_timeout_failure' => 'stuck or timeout failure',
|
|
'runner_system_failure' => 'runner system failure',
|
|
'missing_dependency_failure' => 'missing dependency failure'
|
|
}.freeze
|
|
|
|
def status_tooltip
|
|
base_message
|
|
end
|
|
|
|
def badge_tooltip
|
|
base_message
|
|
end
|
|
|
|
def self.matches?(build, user)
|
|
build.failed?
|
|
end
|
|
|
|
private
|
|
|
|
def base_message
|
|
"#{s_('CiStatusLabel|failed')} #{description}"
|
|
end
|
|
|
|
def description
|
|
"<br> (#{REASONS[subject.failure_reason]})"
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|