2017-08-17 10:53:50 -04:00
|
|
|
- breadcrumb_title "Runners"
|
2016-06-16 14:39:30 -04:00
|
|
|
- @no_container = true
|
2015-12-11 04:22:05 -05:00
|
|
|
|
2016-06-30 09:01:26 -04:00
|
|
|
%div{ class: container_class }
|
2016-06-16 14:39:30 -04:00
|
|
|
.bs-callout
|
|
|
|
%p
|
2017-01-25 11:14:58 -05:00
|
|
|
A 'Runner' is a process which runs a job.
|
2015-11-10 16:23:49 -05:00
|
|
|
You can setup as many Runners as you need.
|
2016-06-16 14:39:30 -04:00
|
|
|
%br
|
2015-11-10 16:23:49 -05:00
|
|
|
Runners can be placed on separate users, servers, even on your local machine.
|
2016-06-16 14:39:30 -04:00
|
|
|
%br
|
2015-08-25 21:42:46 -04:00
|
|
|
|
2016-06-16 14:39:30 -04:00
|
|
|
%div
|
2015-11-10 16:23:49 -05:00
|
|
|
%span Each Runner can be in one of the following states:
|
2016-06-16 14:39:30 -04:00
|
|
|
%ul
|
|
|
|
%li
|
2018-04-13 15:36:22 -04:00
|
|
|
%span.badge.badge-success shared
|
2017-01-25 11:14:58 -05:00
|
|
|
\- Runner runs jobs from all unassigned projects
|
2017-10-05 08:25:31 -04:00
|
|
|
%li
|
2018-05-08 11:49:30 -04:00
|
|
|
%span.badge.badge-success group
|
2017-10-05 08:25:31 -04:00
|
|
|
\- Runner runs jobs from all unassigned projects in its group
|
2016-06-16 14:39:30 -04:00
|
|
|
%li
|
2018-04-13 15:37:55 -04:00
|
|
|
%span.badge.badge-info specific
|
2017-01-25 11:14:58 -05:00
|
|
|
\- Runner runs jobs from assigned projects
|
2016-06-28 07:55:12 -04:00
|
|
|
%li
|
2018-04-13 15:34:22 -04:00
|
|
|
%span.badge.badge-warning locked
|
2015-11-10 16:23:49 -05:00
|
|
|
\- Runner cannot be assigned to other projects
|
2016-06-16 14:39:30 -04:00
|
|
|
%li
|
2018-04-13 15:37:07 -04:00
|
|
|
%span.badge.badge-danger paused
|
2017-01-25 11:14:58 -05:00
|
|
|
\- Runner will not receive any new jobs
|
2015-08-25 21:42:46 -04:00
|
|
|
|
2017-05-22 09:51:36 -04:00
|
|
|
.bs-callout.clearfix
|
2018-04-09 13:36:21 -04:00
|
|
|
.float-left
|
2017-05-22 09:51:36 -04:00
|
|
|
%p
|
|
|
|
You can reset runners registration token by pressing a button below.
|
|
|
|
.prepend-top-10
|
2017-07-17 08:46:00 -04:00
|
|
|
= button_to _("Reset runners registration token"), reset_runners_token_admin_application_settings_path,
|
2018-05-10 15:22:56 -04:00
|
|
|
method: :put, class: 'btn btn-default',
|
2017-07-17 08:46:00 -04:00
|
|
|
data: { confirm: _("Are you sure you want to reset registration token?") }
|
2017-05-22 09:51:36 -04:00
|
|
|
|
2018-02-21 11:09:06 -05:00
|
|
|
= render partial: 'ci/runner/how_to_setup_shared_runner',
|
|
|
|
locals: { registration_token: Gitlab::CurrentSettings.runners_registration_token }
|
2017-05-22 09:51:36 -04:00
|
|
|
|
2018-07-03 13:28:09 -04:00
|
|
|
.row-content-block.second-block
|
|
|
|
= form_tag admin_runners_path, id: 'runners-search', method: :get, class: 'filter-form js-filter-form' do
|
|
|
|
.filtered-search-wrapper
|
|
|
|
.filtered-search-box
|
|
|
|
= dropdown_tag(custom_icon('icon_history'),
|
|
|
|
options: { wrapper_class: "filtered-search-history-dropdown-wrapper",
|
|
|
|
toggle_class: "filtered-search-history-dropdown-toggle-button",
|
|
|
|
dropdown_class: "filtered-search-history-dropdown",
|
|
|
|
content_class: "filtered-search-history-dropdown-content",
|
|
|
|
title: "Recent searches" }) do
|
|
|
|
.js-filtered-search-history-dropdown{ data: { full_path: admin_runners_path } }
|
|
|
|
.filtered-search-box-input-container.droplab-dropdown
|
|
|
|
.scroll-container
|
|
|
|
%ul.tokens-container.list-unstyled
|
|
|
|
%li.input-token
|
|
|
|
%input.form-control.filtered-search{ { id: 'filtered-search-runners', placeholder: 'Search or filter results...' } }
|
|
|
|
#js-dropdown-hint.filtered-search-input-dropdown-menu.dropdown-menu.hint-dropdown
|
|
|
|
%ul{ data: { dropdown: true } }
|
|
|
|
%li.filter-dropdown-item{ data: { action: 'submit' } }
|
|
|
|
= button_tag class: %w[btn btn-link] do
|
|
|
|
= icon('search')
|
|
|
|
%span
|
|
|
|
Press Enter or click to search
|
|
|
|
%ul.filter-dropdown{ data: { dynamic: true, dropdown: true } }
|
|
|
|
%li.filter-dropdown-item
|
|
|
|
= button_tag class: %w[btn btn-link] do
|
|
|
|
-# Encapsulate static class name `{{icon}}` inside #{} to bypass
|
|
|
|
-# haml lint's ClassAttributeWithStaticValue
|
|
|
|
%i.fa{ class: "#{'{{icon}}'}" }
|
|
|
|
%span.js-filter-hint
|
|
|
|
{{hint}}
|
|
|
|
%span.js-filter-tag.dropdown-light-content
|
|
|
|
{{tag}}
|
|
|
|
#js-dropdown-admin-runner-status.filtered-search-input-dropdown-menu.dropdown-menu
|
|
|
|
%ul{ data: { dropdown: true } }
|
|
|
|
- Ci::Runner::AVAILABLE_STATUSES.each do |status|
|
|
|
|
%li.filter-dropdown-item{ data: { value: status } }
|
|
|
|
= button_tag class: %w[btn btn-link] do
|
|
|
|
= status.titleize
|
|
|
|
= button_tag class: %w[clear-search hidden] do
|
|
|
|
= icon('times')
|
|
|
|
.clearfix
|
|
|
|
.float-right.light
|
|
|
|
.prepend-top-10
|
2018-06-08 07:26:41 -04:00
|
|
|
Runners currently online: #{@active_runners_cnt}
|
2015-08-25 21:42:46 -04:00
|
|
|
|
2016-06-16 14:39:30 -04:00
|
|
|
%br
|
2015-08-25 21:42:46 -04:00
|
|
|
|
2017-06-26 13:29:17 -04:00
|
|
|
- if @runners.any?
|
2017-06-19 08:28:11 -04:00
|
|
|
.runners-content
|
|
|
|
.table-holder
|
|
|
|
%table.table
|
|
|
|
%thead
|
|
|
|
%tr
|
|
|
|
%th Type
|
|
|
|
%th Runner token
|
|
|
|
%th Description
|
|
|
|
%th Version
|
2018-02-25 22:34:50 -05:00
|
|
|
%th IP Address
|
2017-06-19 08:28:11 -04:00
|
|
|
%th Projects
|
|
|
|
%th Jobs
|
|
|
|
%th Tags
|
2018-06-05 20:44:37 -04:00
|
|
|
%th= link_to 'Last contact', admin_runners_path(safe_params.slice(:search).merge(sort: 'contacted_asc'))
|
2017-06-19 08:28:11 -04:00
|
|
|
%th
|
2015-08-25 21:42:46 -04:00
|
|
|
|
2017-06-19 08:28:11 -04:00
|
|
|
- @runners.each do |runner|
|
|
|
|
= render "admin/runners/runner", runner: runner
|
|
|
|
= paginate @runners, theme: "gitlab"
|
2017-06-26 13:29:17 -04:00
|
|
|
- else
|
|
|
|
.nothing-here-block No runners found
|