From acd9cd0906046f3d11d95aa9dc9d1af0498ef2ef Mon Sep 17 00:00:00 2001 From: James Edwards-Jones Date: Thu, 4 May 2017 17:50:09 +0100 Subject: =?UTF-8?q?Hides=20pipeline=20=E2=80=98Failed=20Jobs=E2=80=99=20ta?= =?UTF-8?q?b=20when=20no=20jobs=20have=20failed?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects/pipelines_controller.rb | 6 ++++- app/views/projects/pipelines/_with_tabs.html.haml | 31 +++++++++++++---------- 2 files changed, 22 insertions(+), 15 deletions(-) (limited to 'app') diff --git a/app/controllers/projects/pipelines_controller.rb b/app/controllers/projects/pipelines_controller.rb index 915f0bc63f7..3a56be2735a 100644 --- a/app/controllers/projects/pipelines_controller.rb +++ b/app/controllers/projects/pipelines_controller.rb @@ -71,7 +71,11 @@ class Projects::PipelinesController < Projects::ApplicationController end def failures - render_show + if @pipeline.statuses.latest.failed.present? + render_show + else + redirect_to pipeline_path(@pipeline) + end end def status diff --git a/app/views/projects/pipelines/_with_tabs.html.haml b/app/views/projects/pipelines/_with_tabs.html.haml index 76eb8533cc3..ba2c71cfd88 100644 --- a/app/views/projects/pipelines/_with_tabs.html.haml +++ b/app/views/projects/pipelines/_with_tabs.html.haml @@ -1,3 +1,5 @@ +- failed_builds = @pipeline.statuses.latest.failed + .tabs-holder %ul.pipelines-tabs.nav-links.no-top.no-bottom %li.js-pipeline-tab-link @@ -7,10 +9,11 @@ = link_to builds_namespace_project_pipeline_path(@project.namespace, @project, @pipeline), data: {target: 'div#js-tab-builds', action: 'builds', toggle: 'tab' }, class: 'builds-tab' do Jobs %span.badge.js-builds-counter= pipeline.statuses.count - %li.js-failures-tab-link - = link_to failures_namespace_project_pipeline_path(@project.namespace, @project, @pipeline), data: {target: 'div#js-tab-failures', action: 'failures', toggle: 'tab' }, class: 'failures-tab' do - Failures - %span.badge.js-failures-counter= pipeline.statuses.latest.failed.count + - if failed_builds.present? + %li.js-failures-tab-link + = link_to failures_namespace_project_pipeline_path(@project.namespace, @project, @pipeline), data: {target: 'div#js-tab-failures', action: 'failures', toggle: 'tab' }, class: 'failures-tab' do + Failed Jobs + %span.badge.js-failures-counter= failed_builds.count .tab-content #js-tab-pipeline.tab-pane @@ -41,13 +44,13 @@ %th Coverage %th = render partial: "projects/stage/stage", collection: pipeline.stages, as: :stage - #js-tab-failures.build-failures.tab-pane - - failed = @pipeline.statuses.latest.failed - - failed.each do |build| - .build-state - %span.ci-status-icon-failed= custom_icon('icon_status_failed') - %span.stage - = build.stage.titleize - %span.build-name - = render "notify/links/#{build.to_partial_path}", pipeline: @pipeline, build: build - %pre.build-log= build_summary(build) + - if failed_builds.present? + #js-tab-failures.build-failures.tab-pane + - failed_builds.each do |build| + .build-state + %span.ci-status-icon-failed= custom_icon('icon_status_failed') + %span.stage + = build.stage.titleize + %span.build-name + = render "notify/links/#{build.to_partial_path}", pipeline: @pipeline, build: build + %pre.build-log= build_summary(build) -- cgit v1.2.3