Commit 80c86bcc authored by Katarzyna Kobierska's avatar Katarzyna Kobierska

Create shared partial for project and admin builds

parent 27c3a871
- project = build.project
%tr.build.commit
%td.status
= ci_status_with_icon(build.status)
%td
.branch-commit
- if can?(current_user, :read_build, build.project)
= 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 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")
= link_to build.short_sha, namespace_project_commit_path(build.project.namespace, build.project, build.sha), class: "monospace commit-id"
- if build.stuck?
%i.fa.fa-warning.text-warning
.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
%td
- if project
= link_to project.name_with_namespace, admin_namespace_project_path(project.namespace, project)
%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, project) && build.artifacts?
= link_to download_namespace_project_build_artifacts_path(build.project.namespace, build.project, build), title: 'Download artifacts', class: 'btn btn-build' do
%i.fa.fa-download
- if can?(current_user, :update_build, build.project)
- 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
%i.fa.fa-remove.cred
- elsif defined?(allow_retry) && allow_retry && 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
%i.fa.fa-refresh
......@@ -5,7 +5,7 @@
.top-area
- build_path = ->(scope) { admin_builds_path(scope: scope) }
= render "shared/builds_tabs", build_path: build_path, all_builds: @all_builds, scope: @scope
= render "shared/builds/tabs", build_path: build_path, all_builds: @all_builds, scope: @scope
.nav-controls
- if @all_builds.running_or_pending.any?
......
- admin = false unless admin
- if builds.blank?
%li
.nothing-here-block No builds to show
......@@ -20,9 +21,8 @@
%th
- if admin
- builds.each do |build|
= render "admin/builds/build", build: build
= render partial: "shared/builds/build", collection: builds, as: :build, locals: { commit_sha: true, ref: true, stage: true, allow_retry: true, runner: true, admin: true }
- else
= render builds, commit_sha: true, ref: true, stage: true, allow_retry: true, coverage: project.build_coverage_enabled?
= render partial: "shared/builds/build", collection: builds, as: :build, locals: {commit_sha: true, ref: true, stage: true, allow_retry: true, coverage: project.build_coverage_enabled? }
= paginate builds, theme: 'gitlab'
......@@ -5,7 +5,7 @@
%div{ class: container_class }
.top-area
- build_path = ->(scope) { project_builds_path(@project, scope: scope) }
= render "shared/builds_tabs", build_path: build_path, all_builds: @all_builds, scope: @scope
= render "shared/builds/tabs", build_path: build_path, all_builds: @all_builds, scope: @scope
.nav-controls
- if can?(current_user, :update_build, @project)
......@@ -20,4 +20,4 @@
%span CI Lint
%ul.content-list.builds-content-list
= render "table", builds: @builds, project: @project, admin: false
= render "table", builds: @builds, project: @project
- admin = false unless admin
- if admin
- project = build.project
%tr.build.commit
%td.status
- if can?(current_user, :read_build, build)
......@@ -9,9 +13,9 @@
.branch-commit
- if can?(current_user, :read_build, build)
= link_to namespace_project_build_url(build.project.namespace, build.project, build) do
%span ##{build.id}
%span.build-link ##{build.id}
- else
%span ##{build.id}
%span.build-link ##{build.id}
- if defined?(ref) && ref
- if build.ref
......@@ -45,6 +49,11 @@
- 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)
......@@ -53,7 +62,6 @@
.light none
%td
- if defined?(stage) && stage
= build.stage
%td
......@@ -64,13 +72,14 @@
%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)}
- if defined?(coverage) && coverage
%td.coverage
- if defined?(coverage) && coverage
- if build.try(:coverage)
#{build.coverage}%
......@@ -87,6 +96,6 @@
- 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?
- 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')
%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))
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