summaryrefslogtreecommitdiff
path: root/app/views/admin/runners/edit.html.haml
diff options
context:
space:
mode:
Diffstat (limited to 'app/views/admin/runners/edit.html.haml')
-rw-r--r--app/views/admin/runners/edit.html.haml99
1 files changed, 99 insertions, 0 deletions
diff --git a/app/views/admin/runners/edit.html.haml b/app/views/admin/runners/edit.html.haml
new file mode 100644
index 00000000000..0257983016c
--- /dev/null
+++ b/app/views/admin/runners/edit.html.haml
@@ -0,0 +1,99 @@
+- add_page_specific_style 'page_bundles/ci_status'
+
+- runner_name = "##{@runner.id} (#{@runner.short_sha})"
+- if Feature.enabled?(:runner_read_only_admin_view)
+ - breadcrumb_title _('Edit')
+ - page_title _('Edit'), runner_name
+ - add_to_breadcrumbs _('Runners'), admin_runners_path
+ - add_to_breadcrumbs runner_name, admin_runner_path(@runner)
+- else
+ - breadcrumb_title runner_name
+ - page_title runner_name
+
+#js-admin-runner-edit{ data: {runner_id: @runner.id} }
+
+.row
+ .col-md-6
+ %h4= _('Restrict projects for this runner')
+ - if @runner.runner_projects.any?
+ %table.table{ data: { testid: 'assigned-projects' } }
+ %thead
+ %tr
+ %th= _('Assigned projects')
+ - @runner.runner_projects.each do |runner_project|
+ - project = runner_project.project
+ - if project
+ %tr
+ %td
+ .gl-alert.gl-alert-danger
+ .gl-alert-container
+ = sprite_icon('error', size: 16, css_class: 'gl-icon gl-alert-icon gl-alert-icon-no-title')
+ .gl-alert-content
+ .gl-alert-body
+ %strong
+ = project.full_name
+ .gl-alert-actions
+ = link_to _('Disable'), admin_namespace_project_runner_project_path(project.namespace, project, runner_project), method: :delete, class: 'btn gl-alert-action btn-confirm btn-md gl-button'
+
+ %table.table{ data: { testid: 'unassigned-projects' } }
+ %thead
+ %tr
+ %th= _('Project')
+ %th
+
+ %tr
+ %td
+ = form_tag edit_admin_runner_path(@runner), id: 'runner-projects-search', class: 'form-inline', method: :get do
+ .input-group
+ = search_field_tag :search, params[:search], class: 'form-control gl-form-input', spellcheck: false
+ .input-group-append
+ = submit_tag _('Search'), class: 'gl-button btn btn-default'
+
+ %td
+ - @projects.each do |project|
+ %tr
+ %td
+ = project.full_name
+ %td
+ .float-right
+ = form_for project.runner_projects.new, url: admin_namespace_project_runner_projects_path(project.namespace, project), method: :post do |f|
+ = f.hidden_field :runner_id, value: @runner.id
+ = f.submit _('Enable'), aria: { label: s_('Runners|Change to project runner') }, class: 'gl-button btn btn-sm', data: { confirm: (s_('Runners|You are about to change this instance runner to a project runner. This operation is not reversible. Are you sure you want to continue?') if @runner.instance_type?), confirm_btn_variant: 'danger' }
+ = paginate_without_count @projects
+
+ .col-md-6
+ %h4= _('Recent jobs served by this runner')
+ %table.table.ci-table.runner-builds
+ %thead
+ %tr
+ %th= _('Job')
+ %th= _('Status')
+ %th= _('Project')
+ %th= _('Commit')
+ %th= _('Finished at')
+
+ - @builds.each do |build|
+ - project = build.project
+ %tr.build
+ %td.id
+ - if project
+ = link_to project_job_path(project, build) do
+ %strong ##{build.id}
+ - else
+ %strong ##{build.id}
+
+ %td.status
+ = render 'ci/status/badge', status: build.detailed_status(current_user)
+
+ %td.status
+ - if project
+ = project.full_name
+
+ %td.build-link
+ - if project
+ = link_to pipeline_path(build.pipeline) do
+ %strong= build.pipeline.short_sha
+
+ %td.timestamp
+ - if build.finished_at
+ %span= time_ago_with_tooltip build.finished_at