Commit 1cbc8982 authored by Kamil Trzcinski's avatar Kamil Trzcinski

Improve design of Pipeline view

parent ec866445
...@@ -13,6 +13,7 @@ v 8.8.0 (unreleased) ...@@ -13,6 +13,7 @@ v 8.8.0 (unreleased)
- Added inline diff styling for `change_title` system notes. (Adam Butler) - Added inline diff styling for `change_title` system notes. (Adam Butler)
- Project#open_branches has been cleaned up and no longer loads entire records into memory. - Project#open_branches has been cleaned up and no longer loads entire records into memory.
- Escape HTML in commit titles in system note messages - Escape HTML in commit titles in system note messages
- Improve design of Pipeline View
- Fix creation of Ci::Commit object which can lead to pending, failed in some scenarios - Fix creation of Ci::Commit object which can lead to pending, failed in some scenarios
- Improve multiple branch push performance by memoizing permission checking - Improve multiple branch push performance by memoizing permission checking
- Log to application.log when an admin starts and stops impersonating a user - Log to application.log when an admin starts and stops impersonating a user
......
.pipeline-stage { .pipelines {
overflow: hidden; .stage {
text-overflow: ellipsis; max-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.duration, .finished_at {
margin: 4px 0;
}
.commit-title {
margin: 0;
}
.controls {
white-space: nowrap;
}
.btn {
margin: 4px;
}
} }
...@@ -12,10 +12,10 @@ ...@@ -12,10 +12,10 @@
· ·
= link_to commit.short_sha, namespace_project_commit_path(@project.namespace, @project, commit.sha), class: "commit-id monospace" = link_to commit.short_sha, namespace_project_commit_path(@project.namespace, @project, commit.sha), class: "commit-id monospace"
   
- if commit.latest?
%span.label.label-success latest
- if commit.tag? - if commit.tag?
%span.label.label-primary tag %span.label.label-primary tag
- elsif commit.latest?
%span.label.label-success.has-tooltip{ title: 'Latest build for this branch' } latest
- if commit.triggered? - if commit.triggered?
%span.label.label-primary triggered %span.label.label-primary triggered
- if commit.yaml_errors.present? - if commit.yaml_errors.present?
...@@ -23,30 +23,33 @@ ...@@ -23,30 +23,33 @@
- if commit.builds.any?(&:stuck?) - if commit.builds.any?(&:stuck?)
%span.label.label-warning stuck %span.label.label-warning stuck
%p %p.commit-title
%span - if commit_data = commit.commit_data
- if commit_data = commit.commit_data = link_to_gfm truncate(commit_data.title, length: 60), namespace_project_commit_path(@project.namespace, @project, commit_data.id), class: "commit-row-message"
= link_to_gfm commit_data.title, namespace_project_commit_path(@project.namespace, @project, commit_data.id), class: "commit-row-message" - else
- else Cant find HEAD commit for this branch
Cant find HEAD commit for this branch
- stages_status = commit.statuses.stages_status - stages_status = commit.statuses.stages_status
- stages.each do |stage| - stages.each do |stage|
%td %td
- if status = stages_status[stage] - status = stages_status[stage]
- tooltip = "#{stage.titleize}: #{status}" - tooltip = "#{stage.titleize}: #{status || 'not found'}"
%span.has-tooltip{ title: "#{tooltip}", class: "ci-status-icon-#{status}" } - if status
= link_to namespace_project_pipeline_path(@project.namespace, @project, commit.id, anchor: stage), class: "has-tooltip ci-status-icon-#{status || 'skipped'}", title: tooltip do
= ci_icon_for_status(status) = ci_icon_for_status(status)
- else
.light
\-
%td %td
- if commit.started_at && commit.finished_at - if commit.started_at && commit.finished_at
%p %p.duration
= icon("clock-o") = icon("clock-o")
   
#{duration_in_words(commit.finished_at, commit.started_at)} #{duration_in_words(commit.finished_at, commit.started_at)}
- if commit.finished_at - if commit.finished_at
%p %p.finished_at
= icon("calendar") = icon("calendar")
   
#{time_ago_with_tooltip(commit.finished_at)} #{time_ago_with_tooltip(commit.finished_at)}
...@@ -67,11 +70,9 @@ ...@@ -67,11 +70,9 @@
%span #{build.name} %span #{build.name}
- if can?(current_user, :update_pipeline, @project) - if can?(current_user, :update_pipeline, @project)
 
- if commit.retryable? && commit.builds.failed.any? - if commit.retryable? && commit.builds.failed.any?
= link_to retry_namespace_project_pipeline_path(@project.namespace, @project, commit.id), class: 'btn has-tooltip', title: "Retry", method: :post do = link_to retry_namespace_project_pipeline_path(@project.namespace, @project, commit.id), class: 'btn has-tooltip', title: "Retry", method: :post do
= icon("repeat") = icon("repeat")
 
- if commit.active? - if commit.active?
= link_to cancel_namespace_project_pipeline_path(@project.namespace, @project, commit.id), class: 'btn btn-remove has-tooltip', title: "Cancel", method: :post do = link_to cancel_namespace_project_pipeline_path(@project.namespace, @project, commit.id), class: 'btn btn-remove has-tooltip', title: "Cancel", method: :post do
= icon("remove") = icon("remove")
%tr %tr
%th{colspan: 10} %th{colspan: 10}
%strong %strong
%a{name: stage}
- status = statuses.latest.status - status = statuses.latest.status
%span{class: "ci-status-link ci-status-icon-#{status}"} %span{class: "ci-status-link ci-status-icon-#{status}"}
= ci_icon_for_status(status) = ci_icon_for_status(status)
......
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
- else - else
#{@scope.titleize} for this project #{@scope.titleize} for this project
%ul.content-list %ul.content-list.pipelines
- stages = @pipelines.stages - stages = @pipelines.stages
- if @pipelines.blank? - if @pipelines.blank?
%li %li
...@@ -56,8 +56,8 @@ ...@@ -56,8 +56,8 @@
%th ID %th ID
%th Commit %th Commit
- stages.each do |stage| - stages.each do |stage|
%th %th.stage
%span.pipeline-stage.has-tooltip{ title: "#{stage.titleize}" } %span.has-tooltip{ title: "#{stage.titleize}" }
= stage.titleize.pluralize = stage.titleize.pluralize
%th %th
%th %th
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment