2017-08-17 22:00:37 +05:30
|
|
|
module Gitlab
|
|
|
|
module Ci
|
|
|
|
module Status
|
|
|
|
module Build
|
|
|
|
class Retryable < Status::Extended
|
|
|
|
def has_action?
|
|
|
|
can?(user, :update_build, subject)
|
|
|
|
end
|
|
|
|
|
|
|
|
def action_icon
|
2018-03-17 18:26:18 +05:30
|
|
|
'retry'
|
2017-08-17 22:00:37 +05:30
|
|
|
end
|
|
|
|
|
|
|
|
def action_title
|
|
|
|
'Retry'
|
|
|
|
end
|
|
|
|
|
2018-05-09 12:01:36 +05:30
|
|
|
def action_button_title
|
|
|
|
_('Retry this job')
|
|
|
|
end
|
|
|
|
|
2017-08-17 22:00:37 +05:30
|
|
|
def action_path
|
2017-09-10 17:25:29 +05:30
|
|
|
retry_project_job_path(subject.project, subject)
|
2017-08-17 22:00:37 +05:30
|
|
|
end
|
|
|
|
|
|
|
|
def action_method
|
|
|
|
:post
|
|
|
|
end
|
|
|
|
|
|
|
|
def self.matches?(build, user)
|
|
|
|
build.retryable?
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|