diff options
author | Katarzyna Kobierska <kkobierska@gmail.com> | 2016-09-07 15:27:48 +0200 |
---|---|---|
committer | Katarzyna Kobierska <kkobierska@gmail.com> | 2016-09-13 09:05:07 +0200 |
commit | 80c86bcc5b778306825e7650ccaa3c01bfd75ac0 (patch) | |
tree | 092aff77d635586a3229cc8f91fa775808cedc45 /app/views/shared/builds | |
parent | 27c3a87194a3a29c06cf8a2dd489d28ca0b552ab (diff) | |
download | gitlab-ce-80c86bcc5b778306825e7650ccaa3c01bfd75ac0.tar.gz |
Create shared partial for project and admin builds
Diffstat (limited to 'app/views/shared/builds')
-rw-r--r-- | app/views/shared/builds/_build.html.haml | 101 | ||||
-rw-r--r-- | app/views/shared/builds/_tabs.html.haml | 24 |
2 files changed, 125 insertions, 0 deletions
diff --git a/app/views/shared/builds/_build.html.haml b/app/views/shared/builds/_build.html.haml new file mode 100644 index 00000000000..a5f38d0ce95 --- /dev/null +++ b/app/views/shared/builds/_build.html.haml @@ -0,0 +1,101 @@ +- admin = false unless admin +- if admin + - project = build.project + +%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)) + - else + = ci_status_with_icon(build.status) + + %td + .branch-commit + - if can?(current_user, :read_build, build) + = link_to namespace_project_build_url(build.project.namespace, build.project, build) do + %span.build-link ##{build.id} + - else + %span.build-link ##{build.id} + + - if defined?(ref) && ref + - if build.ref + .icon-container + = build.tag? ? icon('tag') : icon('code-fork') + = link_to build.ref, namespace_project_commits_path(build.project.namespace, build.project, build.ref), class: "monospace branch-name" + - else + .light none + .icon-container + = custom_icon("icon_commit") + + - if defined?(commit_sha) && commit_sha + = link_to build.short_sha, namespace_project_commit_path(build.project.namespace, build.project, build.sha), class: "commit-id monospace" + + - if build.stuck? + = icon('warning', class: 'text-warning has-tooltip', title: 'Build is stuck. Check runners.') + - if defined?(retried) && retried + = icon('warning', class: 'text-warning has-tooltip', title: 'Build was retried.') + + .label-container + - if build.tags.any? + - build.tags.each do |tag| + %span.label.label-primary + = tag + - if build.try(:trigger_request) + %span.label.label-info triggered + - if build.try(:allow_failure) + %span.label.label-danger allowed to fail + - if defined?(retried) && retried + %span.label.label-warning retried + - if build.manual? + %span.label.label-info manual + + - if admin + %td + - if project + = link_to project.name_with_namespace, admin_namespace_project_path(project.namespace, project) + + - if defined?(runner) && runner + %td + - if build.try(:runner) + = runner_link(build.runner) + - else + .light none + + %td + = build.stage + + %td + = build.name + + %td + - if build.duration + %p.duration + = custom_icon("icon_timer") + = duration_in_numbers(build.duration) + + - if build.finished_at + %p.finished-at + = icon("calendar") + %span #{time_ago_with_tooltip(build.finished_at)} + + %td.coverage + - if defined?(coverage) && coverage + - if build.try(:coverage) + #{build.coverage}% + + %td + .pull-right + - if can?(current_user, :read_build, build) && build.artifacts? + = link_to download_namespace_project_build_artifacts_path(build.project.namespace, build.project, build), title: 'Download artifacts', class: 'btn btn-build' do + = icon('download') + - if can?(current_user, :update_build, build) + - if build.active? + = link_to cancel_namespace_project_build_path(build.project.namespace, build.project, build, return_to: request.original_url), method: :post, title: 'Cancel', class: 'btn btn-build' do + = icon('remove', class: 'cred') + - elsif defined?(allow_retry) && allow_retry + - if build.retryable? + = link_to retry_namespace_project_build_path(build.project.namespace, build.project, build, return_to: request.original_url), method: :post, title: 'Retry', class: 'btn btn-build' do + = icon('repeat') + - elsif build.playable? && !admin + = link_to play_namespace_project_build_path(build.project.namespace, build.project, build, return_to: request.original_url), method: :post, title: 'Play', class: 'btn btn-build' do + = custom_icon('icon_play') diff --git a/app/views/shared/builds/_tabs.html.haml b/app/views/shared/builds/_tabs.html.haml new file mode 100644 index 00000000000..9c3173f7a1a --- /dev/null +++ b/app/views/shared/builds/_tabs.html.haml @@ -0,0 +1,24 @@ +%ul.nav-links + %li{class: ('active' if scope.nil?)} + = link_to build_path[nil] do + All + %span.badge.js-totalbuilds-count + = number_with_delimiter(all_builds.count(:id)) + + %li{class: ('active' if scope == 'pending')} + = link_to build_path[:pending] do + Pending + %span.badge + = number_with_delimiter(all_builds.pending.count(:id)) + + %li{class: ('active' if scope == 'running')} + = link_to build_path[:running] do + Running + %span.badge + = number_with_delimiter(all_builds.running.count(:id)) + + %li{class: ('active' if scope == 'finished')} + = link_to build_path[:finished] do + Finished + %span.badge + = number_with_delimiter(all_builds.finished.count(:id)) |