diff --git a/app/controllers/projects/runners_controller.rb b/app/controllers/projects/runners_controller.rb index bc4c5bd45759541ea4783536e5d5c3800e41d363..798d668f25161941c5e4bba3943922ba18be6c9c 100644 --- a/app/controllers/projects/runners_controller.rb +++ b/app/controllers/projects/runners_controller.rb @@ -7,7 +7,7 @@ class Projects::RunnersController < Projects::ApplicationController def index @runners = project.runners.ordered @specific_runners = current_user.ci_authorized_runners. - specific_for(project).ordered.page(params[:page]).per(20) + available_for(project).ordered.page(params[:page]).per(20) @shared_runners = Ci::Runner.shared.active @shared_runners_count = @shared_runners.count(:all) end diff --git a/app/models/ci/runner.rb b/app/models/ci/runner.rb index bb1cffdcae645320ba1dd58f614eb0628b0cf6ea..101817e1f56aca8ef555b9b05bcc298af0620021 100644 --- a/app/models/ci/runner.rb +++ b/app/models/ci/runner.rb @@ -26,7 +26,7 @@ module Ci .where("ci_runner_projects.gl_project_id = :project_id OR ci_runners.is_shared = true", project_id: project_id) end - scope :specific_for, ->(project) do + scope :available_for, ->(project) do # TODO: That `to_sql` is needed to workaround a weird Rails bug. # Without that, placeholders would miss one and couldn't match. where(locked: false). diff --git a/spec/models/ci/runner_spec.rb b/spec/models/ci/runner_spec.rb index 9a6bc6b96c162ec98aed06a07f6c058d1c796930..51e60ef8ada03ade6023d2a06054b3fbc75c3897 100644 --- a/spec/models/ci/runner_spec.rb +++ b/spec/models/ci/runner_spec.rb @@ -259,7 +259,7 @@ describe Ci::Runner, models: true do end end - describe '.specific_for' do + describe '.available_for' do let(:runner) { create(:ci_runner) } let(:project) { create(:project) } let(:another_project) { create(:project) } @@ -274,13 +274,13 @@ describe Ci::Runner, models: true do end context 'should not give owned runner' do - subject { Ci::Runner.specific_for(project) } + subject { Ci::Runner.available_for(project) } it { is_expected.to be_empty } end context 'should not give shared runner' do - subject { Ci::Runner.specific_for(another_project) } + subject { Ci::Runner.available_for(another_project) } it { is_expected.to be_empty } end @@ -288,13 +288,13 @@ describe Ci::Runner, models: true do context 'with unlocked runner' do context 'should not give owned runner' do - subject { Ci::Runner.specific_for(project) } + subject { Ci::Runner.available_for(project) } it { is_expected.to be_empty } end context 'should give a specific runner' do - subject { Ci::Runner.specific_for(another_project) } + subject { Ci::Runner.available_for(another_project) } it { is_expected.to contain_exactly(runner) } end @@ -306,13 +306,13 @@ describe Ci::Runner, models: true do end context 'should not give owned runner' do - subject { Ci::Runner.specific_for(project) } + subject { Ci::Runner.available_for(project) } it { is_expected.to be_empty } end context 'should not give a locked runner' do - subject { Ci::Runner.specific_for(another_project) } + subject { Ci::Runner.available_for(another_project) } it { is_expected.to be_empty } end