43 lines
1.7 KiB
Text
43 lines
1.7 KiB
Text
- ci_commit = @merge_request.source_project.ci_commit(@merge_request.source_sha)
|
|
- if ci_commit
|
|
- status = ci_commit.status
|
|
.mr-widget-heading
|
|
.ci_widget{class: "ci-#{status}"}
|
|
= ci_status_icon(ci_commit)
|
|
%span CI build #{status}
|
|
for #{@merge_request.last_commit_short_sha}.
|
|
%span.ci-coverage
|
|
= link_to "View build details", ci_status_path(ci_commit)
|
|
|
|
- elsif @merge_request.has_ci?
|
|
- # Compatibility with old CI integrations (ex jenkins) when you request status from CI server via AJAX
|
|
- # Remove in later versions when services like Jenkins will set CI status via Commit status API
|
|
.mr-widget-heading
|
|
- [:success, :skipped, :canceled, :failed, :running, :pending].each do |status|
|
|
.ci_widget{class: "ci-#{status}", style: "display:none"}
|
|
- if status == :success
|
|
- status = "passed"
|
|
= icon("check-circle")
|
|
- else
|
|
= icon("circle")
|
|
%span CI build #{status}
|
|
for #{@merge_request.last_commit_short_sha}.
|
|
%span.ci-coverage
|
|
- if ci_build_details_path(@merge_request)
|
|
= link_to "View build details", ci_build_details_path(@merge_request), :"data-no-turbolink" => "data-no-turbolink"
|
|
|
|
.ci_widget
|
|
= icon("spinner spin")
|
|
Checking CI status for #{@merge_request.last_commit_short_sha}…
|
|
|
|
.ci_widget.ci-not_found{style: "display:none"}
|
|
= icon("times-circle")
|
|
Could not find CI status for #{@merge_request.last_commit_short_sha}.
|
|
|
|
.ci_widget.ci-error{style: "display:none"}
|
|
= icon("times-circle")
|
|
Could not connect to the CI server. Please check your settings and try again.
|
|
|
|
:coffeescript
|
|
$ ->
|
|
merge_request_widget.getCiStatus()
|