Commit c9d80688 authored by Suzanne Selhorn's avatar Suzanne Selhorn Committed by Jose Ivan Vargas
parent 8fefb07a
- link = link_to _("Install GitLab Runner"), 'https://docs.gitlab.com/runner/install/', target: '_blank' - link = link_to _("Install GitLab Runner and ensure it's running."), 'https://docs.gitlab.com/runner/install/', target: '_blank'
.gl-mb-3 .gl-mb-3
%h4= _("Set up a %{type} Runner manually") % { type: type } %h5= _("Set up a %{type} runner manually") % { type: type }
%ol %ol
%li %li
= link.html_safe = link.html_safe
%li %li
= _("Specify the following URL during the Runner setup:") = _("Register the runner with this URL:")
%br
%code#coordinator_address= root_url(only_path: false) %code#coordinator_address= root_url(only_path: false)
= clipboard_button(target: '#coordinator_address', title: _("Copy URL"), class: "btn-transparent btn-clipboard") = clipboard_button(target: '#coordinator_address', title: _("Copy URL"), class: "btn-transparent btn-clipboard")
%li %br
= _("Use the following registration token during setup:") %br
= _("And this registration token:")
%br
%code#registration_token= registration_token %code#registration_token= registration_token
= clipboard_button(target: '#registration_token', title: _("Copy token"), class: "btn-transparent btn-clipboard") = clipboard_button(target: '#registration_token', title: _("Copy token"), class: "btn-transparent btn-clipboard")
.gl-mt-3.gl-mb-3
= button_to _("Reset runners registration token"), reset_token_url, .gl-mt-3.gl-mb-3
method: :put, class: 'gl-button btn btn-default', = button_to _("Reset registration token"), reset_token_url,
data: { confirm: _("Are you sure you want to reset registration token?") } method: :put, class: 'gl-button btn btn-default',
%li data: { confirm: _("Are you sure you want to reset the registration token?") }
= _("Start the Runner!")
.gl-mb-3 %h5= _('Set up a %{type} runner automatically') % { type: type }
%h4= _('Set up a %{type} Runner automatically') % { type: type }
%p %p
- link_to_help_page = link_to(_('Learn more about Kubernetes'), - link_to_help_page = link_to(_('Learn more.'),
help_page_path('user/project/clusters/index'), help_page_path('user/project/clusters/index'),
target: '_blank', target: '_blank',
rel: 'noopener noreferrer') rel: 'noopener noreferrer')
= _('You can easily install a Runner on a Kubernetes cluster. %{link_to_help_page}').html_safe % { link_to_help_page: link_to_help_page } = _('Register a runner on a Kubernetes cluster. %{link_to_help_page}').html_safe % { link_to_help_page: link_to_help_page }
%ol %ol
%li %li
= _('Click the button below to begin the install process by navigating to the Kubernetes page') = _('Click the button below.')
%li %li
= _('Select an existing Kubernetes cluster or create a new one') = _('Select an existing Kubernetes cluster or create a new one.')
%li %li
= _('From the Kubernetes cluster details view, install Runner from the applications list') = _('From the Kubernetes cluster details view, applications list, install GitLab Runner.')
= link_to _('Install Runner on Kubernetes'), = link_to _('Install GitLab Runner on Kubernetes'),
clusters_path, clusters_path,
class: 'gl-button btn btn-info' class: 'gl-button btn btn-info'
- link = link_to _('Runners API'), help_page_path('api/runners.md') - link = link_to _('Runner API'), help_page_path('api/runners.md')
%h3 %h4
= _('Group Runners') = _('Group runners')
.bs-callout.bs-callout-warning %p
= _('GitLab Group Runners can execute code for all the projects in this group.') = _('These runners are shared across projects in this group.')
= _('They can be managed using the %{link}.').html_safe % { link: link } = _('Group runners can be managed with the %{link}.').html_safe % { link: link }
-# Proper policies should be implemented per -# Proper policies should be implemented per
-# https://gitlab.com/gitlab-org/gitlab-foss/issues/45894 -# https://gitlab.com/gitlab-org/gitlab-foss/issues/45894
...@@ -18,3 +18,4 @@ ...@@ -18,3 +18,4 @@
locals: { registration_token: @group.runners_token, locals: { registration_token: @group.runners_token,
type: 'group', type: 'group',
reset_token_url: reset_registration_token_group_settings_ci_cd_path } reset_token_url: reset_registration_token_group_settings_ci_cd_path }
%br
...@@ -2,8 +2,6 @@ ...@@ -2,8 +2,6 @@
%hr %hr
%p.lead
= _('To start serving your jobs you can add Runners to your group')
.row .row
.col-sm-6 .col-sm-6
= render 'groups/runners/group_runners' = render 'groups/runners/group_runners'
...@@ -11,7 +9,7 @@ ...@@ -11,7 +9,7 @@
= render 'groups/runners/shared_runners' = render 'groups/runners/shared_runners'
%h4.underlined-title %h4.underlined-title
= _('Available Runners: %{runners}').html_safe % { runners: limited_counter_with_delimiter(@all_group_runners) } = _('Available runners: %{runners}').html_safe % { runners: limited_counter_with_delimiter(@all_group_runners) }
-# haml-lint:disable NoPlainNodes -# haml-lint:disable NoPlainNodes
.row .row
......
...@@ -31,8 +31,8 @@ ...@@ -31,8 +31,8 @@
%button.btn.gl-button.btn-default.js-settings-toggle{ type: "button" } %button.btn.gl-button.btn-default.js-settings-toggle{ type: "button" }
= expanded ? _('Collapse') : _('Expand') = expanded ? _('Collapse') : _('Expand')
%p %p
= _("Runners are processes that pick up and execute jobs for GitLab. Here you can register and see your Runners for this project.") = _("Runners are processes that pick up and execute CI/CD jobs for GitLab.")
= link_to s_('More information'), help_page_path('ci/runners/README') = link_to s_('How do I configure runners?'), help_page_path('ci/runners/README')
.settings-content .settings-content
= render 'groups/runners/index' = render 'groups/runners/index'
......
- link = link_to _('Runners API'), help_page_path('api/runners.md') - link = link_to _('Runner API'), help_page_path('api/runners.md')
%h3 %h4
= _('Group Runners') = _('Group runners')
.bs-callout.bs-callout-warning .bs-callout.bs-callout-warning
= _('GitLab Group Runners can execute code for all the projects in this group.') = _('These runners are shared across projects in this group.')
= _('They can be managed using the %{link}.').html_safe % { link: link } %br
%br
= _('Group runners can be managed with the %{link}.').html_safe % { link: link }
- if @project.group - if @project.group
%hr %br
%br
- if @project.group_runners_enabled? - if @project.group_runners_enabled?
= link_to toggle_group_runners_project_runners_path(@project), class: 'btn btn-close', method: :post do = link_to toggle_group_runners_project_runners_path(@project), class: 'btn btn-close', method: :post do
= _('Disable group Runners') = _('Disable group runners')
- else - else
= link_to toggle_group_runners_project_runners_path(@project), class: 'btn btn-success btn-inverted', method: :post do = link_to toggle_group_runners_project_runners_path(@project), class: 'btn btn-success btn-inverted', method: :post do
= _('Enable group Runners') = _('Enable group runners')
   
= _('for this project') = _('for this project')
- if !@project.group - if !@project.group
= _('This project does not belong to a group and can therefore not make use of group Runners.') = _('This project does not belong to a group and cannot make use of group runners.')
- elsif @group_runners.empty? - elsif @group_runners.empty?
= _('This group does not provide any group Runners yet.') = _('This group does not have any group runners yet.')
- if can?(current_user, :admin_pipeline, @project.group) - if can?(current_user, :admin_pipeline, @project.group)
- group_link = link_to _('Group CI/CD settings'), group_settings_ci_cd_path(@project.group) - group_link = link_to _("group's CI/CD settings."), group_settings_ci_cd_path(@project.group)
= _('Group maintainers can register group runners in the %{link}').html_safe % { link: group_link } = _('Group maintainers can register group runners in the %{link}').html_safe % { link: group_link }
- else - else
= _('Ask your group maintainer to set up a group Runner.') = _('Ask your group maintainer to set up a group runner.')
- else - else
%h4.underlined-title %h4.underlined-title
= _('Available group Runners: %{runners}').html_safe % { runners: @group_runners.count } = _('Available group runners: %{runners}').html_safe % { runners: @group_runners.count }
%ul.bordered-list %ul.bordered-list
= render partial: 'projects/runners/runner', collection: @group_runners, as: :runner = render partial: 'projects/runners/runner', collection: @group_runners, as: :runner
= render 'shared/runners/runner_description' = render 'shared/runners/runner_description'
%hr
%p.lead= _('To start serving your jobs you can either add specific Runners to your project or use shared Runners')
.row .row
.col-sm-6 .col-sm-6
= render 'projects/runners/specific_runners' = render 'projects/runners/specific_runners'
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
- else - else
= link_to _('Resume'), resume_project_runner_path(@project, runner), method: :post, class: 'btn btn-success btn-sm' = link_to _('Resume'), resume_project_runner_path(@project, runner), method: :post, class: 'btn btn-success btn-sm'
- if runner.belongs_to_one_project? - if runner.belongs_to_one_project?
= link_to _('Remove Runner'), project_runner_path(@project, runner), data: { confirm: _("Are you sure?") }, method: :delete, class: 'btn btn-danger btn-sm' = link_to _('Remove runner'), project_runner_path(@project, runner), data: { confirm: _("Are you sure?") }, method: :delete, class: 'btn btn-danger btn-sm'
- else - else
- runner_project = @project.runner_projects.find_by(runner_id: runner) # rubocop: disable CodeReuse/ActiveRecord - runner_project = @project.runner_projects.find_by(runner_id: runner) # rubocop: disable CodeReuse/ActiveRecord
= link_to _('Disable for this project'), project_runner_project_path(@project, runner_project), data: { confirm: _("Are you sure?") }, method: :delete, class: 'btn btn-danger btn-sm' = link_to _('Disable for this project'), project_runner_project_path(@project, runner_project), data: { confirm: _("Are you sure?") }, method: :delete, class: 'btn btn-danger btn-sm'
......
...@@ -2,7 +2,8 @@ ...@@ -2,7 +2,8 @@
= render layout: 'shared/runners/shared_runners_description' do = render layout: 'shared/runners/shared_runners_description' do
- if !isVueifySharedRunnersToggleEnabled - if !isVueifySharedRunnersToggleEnabled
%hr %br
%br
- if @project.group&.shared_runners_setting == 'disabled_and_unoverridable' - if @project.group&.shared_runners_setting == 'disabled_and_unoverridable'
%h5.gl-text-red-500 %h5.gl-text-red-500
= _('Shared runners disabled on group level') = _('Shared runners disabled on group level')
...@@ -19,8 +20,8 @@ ...@@ -19,8 +20,8 @@
#toggle-shared-runners-form{ data: toggle_shared_runners_settings_data(@project) } #toggle-shared-runners-form{ data: toggle_shared_runners_settings_data(@project) }
- if @shared_runners_count == 0 - if @shared_runners_count == 0
= _('This GitLab instance does not provide any shared Runners yet. Instance administrators can register shared Runners in the admin area.') = _('This GitLab instance does not provide any shared runners yet. Instance administrators can register shared runners in the admin area.')
- else - else
%h4.underlined-title #{_('Available shared Runners:')} #{@shared_runners_count} %h4.underlined-title #{_('Available shared runners:')} #{@shared_runners_count}
%ul.bordered-list.available-shared-runners %ul.bordered-list.available-shared-runners
= render partial: 'projects/runners/runner', collection: @shared_runners, as: :runner = render partial: 'projects/runners/runner', collection: @shared_runners, as: :runner
%h3 %h4
= _('Specific Runners') = _('Specific runners')
.bs-callout.help-callout .bs-callout.help-callout
= _('These runners are specific to this project.')
%hr
= render partial: 'ci/runner/how_to_setup_runner_automatically', = render partial: 'ci/runner/how_to_setup_runner_automatically',
locals: { type: 'specific', locals: { type: 'specific',
clusters_path: project_clusters_path(@project) } clusters_path: project_clusters_path(@project) }
...@@ -11,14 +13,16 @@ ...@@ -11,14 +13,16 @@
type: 'specific', type: 'specific',
reset_token_url: reset_registration_token_namespace_project_settings_ci_cd_path } reset_token_url: reset_registration_token_namespace_project_settings_ci_cd_path }
%hr
- if @project_runners.any? - if @project_runners.any?
%h4.underlined-title= _('Runners activated for this project') %h4.underlined-title= _('Available specific runners')
%ul.bordered-list.activated-specific-runners %ul.bordered-list.activated-specific-runners
= render partial: 'projects/runners/runner', collection: @project_runners, as: :runner = render partial: 'projects/runners/runner', collection: @project_runners, as: :runner
= paginate @project_runners, theme: "gitlab", param_name: "project_page", params: { expand_runners: true, anchor: 'js-runners-settings' } = paginate @project_runners, theme: "gitlab", param_name: "project_page", params: { expand_runners: true, anchor: 'js-runners-settings' }
- if @assignable_runners.any? - if @assignable_runners.any?
%h4.underlined-title= _('Available specific runners') %h4.underlined-title= _('Other available runners')
%ul.bordered-list.available-specific-runners %ul.bordered-list.available-specific-runners
= render partial: 'projects/runners/runner', collection: @assignable_runners, as: :runner = render partial: 'projects/runners/runner', collection: @assignable_runners, as: :runner
= paginate @assignable_runners, theme: "gitlab", param_name: "specific_page", :params => { :anchor => 'js-runners-settings'} = paginate @assignable_runners, theme: "gitlab", param_name: "specific_page", :params => { :anchor => 'js-runners-settings'}
- page_title _('Edit'), "#{@runner.description} ##{@runner.id}", _('Runners') - page_title _('Edit'), "#{@runner.description} ##{@runner.id}", _('runners')
%h4 Runner ##{@runner.id} %h4 Runner ##{@runner.id}
......
...@@ -40,8 +40,8 @@ ...@@ -40,8 +40,8 @@
%button.btn.js-settings-toggle{ type: 'button' } %button.btn.js-settings-toggle{ type: 'button' }
= expanded ? _('Collapse') : _('Expand') = expanded ? _('Collapse') : _('Expand')
%p %p
= _("Runners are processes that pick up and execute jobs for GitLab. Here you can register and see your Runners for this project.") = _("Runners are processes that pick up and execute CI/CD jobs for GitLab.")
= link_to s_('More information'), help_page_path('ci/runners/README') = link_to s_('How do I configure runners?'), help_page_path('ci/runners/README')
.settings-content .settings-content
= render 'projects/runners/index' = render 'projects/runners/index'
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
= _('Tags') = _('Tags')
.col-sm-10 .col-sm-10
= f.text_field :tag_list, value: runner.tag_list.sort.join(', '), class: 'form-control' = f.text_field :tag_list, value: runner.tag_list.sort.join(', '), class: 'form-control'
.form-text.text-muted= _('You can configure jobs to use runners that are assigned specific tags. Separate tags with commas.') .form-text.text-muted= _('You can set up jobs to only use runners with specific tags. Separate tags with commas.')
- if local_assigns[:in_gitlab_com_admin_context] - if local_assigns[:in_gitlab_com_admin_context]
.form-group.row .form-group.row
= label_tag :public_projects_minutes_cost_factor, class: 'col-form-label col-sm-2' do = label_tag :public_projects_minutes_cost_factor, class: 'col-form-label col-sm-2' do
......
.light.gl-mt-3 .light.gl-mt-3
%p %p
= _("You can set up as many Runners as you need to run your jobs.") = _("Register as many runners as you want. You can register runners as separate users, on separate servers, and on your local machine. Runners are either:")
%br
= _('Runners can be placed on separate users, servers, and even on your local machine.')
%p
= _('Each Runner can be in one of the following states:')
%div %div
%ul %ul
%li %li
%span.badge.badge-success active %span.badge.badge-success active
= _('- Runner is active and can process any new jobs') = _('- Available to run jobs.')
%li %li
%span.badge.badge-danger paused %span.badge.badge-danger paused
= _('- Runner is paused and will not receive any new jobs') = _('- Not available to run jobs.')
- link = link_to _('MaxBuilds'), 'https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersmachine-section', target: '_blank' - link = link_to _('MaxBuilds'), 'https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersmachine-section', target: '_blank'
%h3 %h4
= _('Shared runners') = _('Shared runners')
.bs-callout.shared-runners-description .bs-callout.shared-runners-description
= _('These runners are shared across this GitLab instance.')
%p
- if Gitlab::CurrentSettings.shared_runners_text.present? - if Gitlab::CurrentSettings.shared_runners_text.present?
= markdown_field(Gitlab::CurrentSettings.current_application_settings, :shared_runners_text) = markdown_field(Gitlab::CurrentSettings.current_application_settings, :shared_runners_text)
- else - else
......
---
title: Updated UI text to match style guidelines
merge_request: 50403
author:
type: other
This diff is collapsed.
...@@ -23,7 +23,7 @@ RSpec.describe "Admin Runners" do ...@@ -23,7 +23,7 @@ RSpec.describe "Admin Runners" do
create(:ci_build, pipeline: pipeline, runner_id: runner.id) create(:ci_build, pipeline: pipeline, runner_id: runner.id)
visit admin_runners_path visit admin_runners_path
expect(page).to have_text "Set up a shared Runner manually" expect(page).to have_text "Set up a shared runner manually"
expect(page).to have_text "Runners currently online: 1" expect(page).to have_text "Runners currently online: 1"
end end
...@@ -227,7 +227,7 @@ RSpec.describe "Admin Runners" do ...@@ -227,7 +227,7 @@ RSpec.describe "Admin Runners" do
end end
it 'has all necessary texts including no runner message' do it 'has all necessary texts including no runner message' do
expect(page).to have_text "Set up a shared Runner manually" expect(page).to have_text "Set up a shared runner manually"
expect(page).to have_text "Runners currently online: 0" expect(page).to have_text "Runners currently online: 0"
expect(page).to have_text 'No runners found' expect(page).to have_text 'No runners found'
end end
...@@ -389,7 +389,7 @@ RSpec.describe "Admin Runners" do ...@@ -389,7 +389,7 @@ RSpec.describe "Admin Runners" do
let(:page_token) { find('#registration_token').text } let(:page_token) { find('#registration_token').text }
before do before do
click_button 'Reset runners registration token' click_button 'Reset registration token'
end end
it 'changes registration token' do it 'changes registration token' do
......
...@@ -28,7 +28,7 @@ RSpec.describe 'Group CI/CD settings' do ...@@ -28,7 +28,7 @@ RSpec.describe 'Group CI/CD settings' do
let(:page_token) { find('#registration_token').text } let(:page_token) { find('#registration_token').text }
before do before do
click_button 'Reset runners registration token' click_button 'Reset registration token'
end end
it 'changes registration token' do it 'changes registration token' do
......
...@@ -183,7 +183,7 @@ RSpec.describe "Projects > Settings > Pipelines settings" do ...@@ -183,7 +183,7 @@ RSpec.describe "Projects > Settings > Pipelines settings" do
let(:page_token) { find('#registration_token').text } let(:page_token) { find('#registration_token').text }
before do before do
click_button 'Reset runners registration token' click_button 'Reset registration token'
end end
it 'changes registration token' do it 'changes registration token' do
......
...@@ -19,7 +19,7 @@ RSpec.describe 'Runners' do ...@@ -19,7 +19,7 @@ RSpec.describe 'Runners' do
it 'user can see a button to install runners on kubernetes clusters' do it 'user can see a button to install runners on kubernetes clusters' do
visit project_runners_path(project) visit project_runners_path(project)
expect(page).to have_link('Install Runner on Kubernetes', href: project_clusters_path(project)) expect(page).to have_link('Install GitLab Runner on Kubernetes', href: project_clusters_path(project))
end end
end end
...@@ -69,7 +69,7 @@ RSpec.describe 'Runners' do ...@@ -69,7 +69,7 @@ RSpec.describe 'Runners' do
visit project_runners_path(project) visit project_runners_path(project)
within '.activated-specific-runners' do within '.activated-specific-runners' do
click_on 'Remove Runner' click_on 'Remove runner'
end end
expect(page).not_to have_content(specific_runner.display_name) expect(page).not_to have_content(specific_runner.display_name)
...@@ -226,10 +226,10 @@ RSpec.describe 'Runners' do ...@@ -226,10 +226,10 @@ RSpec.describe 'Runners' do
it 'group runners are not available' do it 'group runners are not available' do
visit project_runners_path(project) visit project_runners_path(project)
expect(page).to have_content 'This group does not provide any group Runners yet' expect(page).to have_content 'This group does not have any group runners yet.'
expect(page).to have_content 'Group maintainers can register group runners in the Group CI/CD settings' expect(page).to have_content 'Group maintainers can register group runners in the group\'s CI/CD settings.'
expect(page).not_to have_content 'Ask your group maintainer to set up a group Runner' expect(page).not_to have_content 'Ask your group maintainer to set up a group runner'
end end
end end
end end
...@@ -241,7 +241,7 @@ RSpec.describe 'Runners' do ...@@ -241,7 +241,7 @@ RSpec.describe 'Runners' do
it 'group runners are not available' do it 'group runners are not available' do
visit project_runners_path(project) visit project_runners_path(project)
expect(page).to have_content 'This project does not belong to a group and can therefore not make use of group Runners.' expect(page).to have_content 'This project does not belong to a group and cannot make use of group runners.'
end end
end end
...@@ -252,10 +252,10 @@ RSpec.describe 'Runners' do ...@@ -252,10 +252,10 @@ RSpec.describe 'Runners' do
it 'group runners are not available' do it 'group runners are not available' do
visit project_runners_path(project) visit project_runners_path(project)
expect(page).to have_content 'This group does not provide any group Runners yet.' expect(page).to have_content 'This group does not have any group runners yet.'
expect(page).not_to have_content 'Group maintainers can register group runners in the Group CI/CD settings' expect(page).not_to have_content 'Group maintainers can register group runners in the group\'s CI/CD settings.'
expect(page).to have_content 'Ask your group maintainer to set up a group Runner.' expect(page).to have_content 'Ask your group maintainer to set up a group runner.'
end end
end end
...@@ -267,21 +267,21 @@ RSpec.describe 'Runners' do ...@@ -267,21 +267,21 @@ RSpec.describe 'Runners' do
it 'group runners are available' do it 'group runners are available' do
visit project_runners_path(project) visit project_runners_path(project)
expect(page).to have_content 'Available group Runners: 1' expect(page).to have_content 'Available group runners: 1'
expect(page).to have_content 'group-runner' expect(page).to have_content 'group-runner'
end end
it 'group runners may be disabled for a project' do it 'group runners may be disabled for a project' do
visit project_runners_path(project) visit project_runners_path(project)
click_on 'Disable group Runners' click_on 'Disable group runners'
expect(page).to have_content 'Enable group Runners' expect(page).to have_content 'Enable group runners'
expect(project.reload.group_runners_enabled).to be false expect(project.reload.group_runners_enabled).to be false
click_on 'Enable group Runners' click_on 'Enable group runners'
expect(page).to have_content 'Disable group Runners' expect(page).to have_content 'Disable group runners'
expect(project.reload.group_runners_enabled).to be true expect(project.reload.group_runners_enabled).to be true
end end
end end
...@@ -305,7 +305,7 @@ RSpec.describe 'Runners' do ...@@ -305,7 +305,7 @@ RSpec.describe 'Runners' do
it 'user can see a link to install runners on kubernetes clusters' do it 'user can see a link to install runners on kubernetes clusters' do
visit group_settings_ci_cd_path(group) visit group_settings_ci_cd_path(group)
expect(page).to have_link('Install Runner on Kubernetes', href: group_clusters_path(group)) expect(page).to have_link('Install GitLab Runner on Kubernetes', href: group_clusters_path(group))
end end
end end
...@@ -316,7 +316,7 @@ RSpec.describe 'Runners' do ...@@ -316,7 +316,7 @@ RSpec.describe 'Runners' do
visit group_settings_ci_cd_path(group) visit group_settings_ci_cd_path(group)
expect(page).not_to have_content 'No runners found' expect(page).not_to have_content 'No runners found'
expect(page).to have_content 'Available Runners: 1' expect(page).to have_content 'Available runners: 1'
expect(page).to have_content 'group-runner' expect(page).to have_content 'group-runner'
end end
...@@ -396,7 +396,7 @@ RSpec.describe 'Runners' do ...@@ -396,7 +396,7 @@ RSpec.describe 'Runners' do
visit group_settings_ci_cd_path(group) visit group_settings_ci_cd_path(group)
expect(page).not_to have_content 'No runners found' expect(page).not_to have_content 'No runners found'
expect(page).to have_content 'Available Runners: 1' expect(page).to have_content 'Available runners: 1'
expect(page).to have_content 'project-runner' expect(page).to have_content 'project-runner'
end end
......
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