summaryrefslogtreecommitdiff
path: root/app/views/admin/runners/edit.html.haml
blob: 5570c46c17f8a49bdbaa77b233a049cc4ca2ca4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
- add_page_specific_style 'page_bundles/ci_status'

- runner_name = "##{@runner.id} (#{@runner.short_sha})"
- if Feature.enabled?(:runner_read_only_admin_view, default_enabled: :yaml)
  - 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
                = render Pajamas::AlertComponent.new(variant: :danger,
                  dismissible: false,
                  title: project.full_name) do
                  .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