From 4d18ccee099a256bf6a2fd72cf696ae8ad4848db Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Mon, 3 Oct 2016 18:16:01 +0100 Subject: Use warning icon --- app/assets/stylesheets/pages/status.scss | 5 +++++ app/helpers/ci_status_helper.rb | 24 ++++++++++++++++------ app/views/projects/builds/_sidebar.html.haml | 2 +- app/views/projects/ci/builds/_build.html.haml | 4 ++-- .../projects/ci/builds/_build_pipeline.html.haml | 4 ++-- 5 files changed, 28 insertions(+), 11 deletions(-) diff --git a/app/assets/stylesheets/pages/status.scss b/app/assets/stylesheets/pages/status.scss index 0ee7ceecae5..978a9c0325e 100644 --- a/app/assets/stylesheets/pages/status.scss +++ b/app/assets/stylesheets/pages/status.scss @@ -51,6 +51,11 @@ fill: $table-text-gray; } } + + &.ci-warning { + color: $orange-light; + border-color: $orange-light; + } svg { height: 13px; diff --git a/app/helpers/ci_status_helper.rb b/app/helpers/ci_status_helper.rb index b7f48630bd4..ac117486f0c 100644 --- a/app/helpers/ci_status_helper.rb +++ b/app/helpers/ci_status_helper.rb @@ -4,9 +4,15 @@ module CiStatusHelper builds_namespace_project_commit_path(project.namespace, project, pipeline.sha) end - def ci_status_with_icon(status, target = nil) - content = ci_icon_for_status(status) + ' '.html_safe + ci_label_for_status(status) - klass = "ci-status ci-#{status}" + def ci_status_with_icon(status, target = nil, allowFailure) + content = ci_icon_for_status(status, allowFailure) + ' '.html_safe + ci_label_for_status(status, allowFailure) + + if allowFailure + klass = 'ci-status ci-warning' + else + klass = 'ci-status ci-#{status}' + end + if target link_to content, target, class: klass else @@ -14,12 +20,18 @@ module CiStatusHelper end end - def ci_label_for_status(status) + def ci_label_for_status(status, allowFailure = false) case status when 'success' 'passed' when 'success_with_warnings' 'passed with warnings' + when 'failed' + if allowFailure + 'warning' + else + status + end else status end @@ -30,7 +42,7 @@ module CiStatusHelper status.humanize end - def ci_icon_for_status(status) + def ci_icon_for_status(status, allowFailure = false) icon_name = case status when 'success' @@ -38,7 +50,7 @@ module CiStatusHelper when 'success_with_warnings' 'icon_status_warning' when 'failed' - 'icon_status_failed' + allowFailure ? 'icon_status_warning' : 'icon_status_failed' when 'pending' 'icon_status_pending' when 'running' diff --git a/app/views/projects/builds/_sidebar.html.haml b/app/views/projects/builds/_sidebar.html.haml index f5344091cae..4ab88f2a503 100644 --- a/app/views/projects/builds/_sidebar.html.haml +++ b/app/views/projects/builds/_sidebar.html.haml @@ -129,7 +129,7 @@ .build-job{class: ('active' if build == @build), data: {stage: build.stage}} = link_to namespace_project_build_path(@project.namespace, @project, build) do = icon('right-arrow') - = ci_icon_for_status(build.status) + = ci_icon_for_status(build.status, build.allow_failure) %span - if build.name = build.name diff --git a/app/views/projects/ci/builds/_build.html.haml b/app/views/projects/ci/builds/_build.html.haml index 9248adfde80..16c8e46ed87 100644 --- a/app/views/projects/ci/builds/_build.html.haml +++ b/app/views/projects/ci/builds/_build.html.haml @@ -9,9 +9,9 @@ %tr.build.commit %td.status - if can?(current_user, :read_build, build) - = ci_status_with_icon(build.status, namespace_project_build_url(build.project.namespace, build.project, build)) + = ci_status_with_icon('failed', '', true) - else - = ci_status_with_icon(build.status) + = ci_status_with_icon(build.status, '', build.allow_failure) %td.branch-commit - if can?(current_user, :read_build, build) diff --git a/app/views/projects/ci/builds/_build_pipeline.html.haml b/app/views/projects/ci/builds/_build_pipeline.html.haml index 547bc0c9c19..e39fbfcbc48 100644 --- a/app/views/projects/ci/builds/_build_pipeline.html.haml +++ b/app/views/projects/ci/builds/_build_pipeline.html.haml @@ -5,8 +5,8 @@ .ci-status-text= subject.name - elsif can?(current_user, :read_build, @project) = link_to namespace_project_build_path(subject.project.namespace, subject.project, subject) do - = render_status_with_link('build', subject.status) + = render_status_with_link('build', subject.status, subject.allow_failure) .ci-status-text= subject.name - else = render_status_with_link('build', subject.status) - = ci_icon_for_status(subject.status) + = ci_icon_for_status(subject.status, subject.allow_failure) -- cgit v1.2.1