Introduce Project#all_runners and use in Ci::UpdateBuildQueueService
This commit is contained in:
parent
dad35d6284
commit
d8dd25a60e
2 changed files with 7 additions and 12 deletions
|
@ -1304,10 +1304,13 @@ class Project < ActiveRecord::Base
|
|||
@group_runners ||= group_runners_enabled? ? Ci::Runner.belonging_to_parent_group_of_project(self.id) : Ci::Runner.none
|
||||
end
|
||||
|
||||
def all_runners
|
||||
union = Gitlab::SQL::Union.new([runners, group_runners, shared_runners])
|
||||
Ci::Runner.from("(#{union.to_sql}) ci_runners")
|
||||
end
|
||||
|
||||
def any_runners?(&block)
|
||||
union = Gitlab::SQL::Union.new([runners, shared_runners, group_runners])
|
||||
runners = Ci::Runner.from("(#{union.to_sql}) ci_runners").active
|
||||
runners.any?(&block)
|
||||
all_runners.active.any?(&block)
|
||||
end
|
||||
|
||||
def valid_runners_token?(token)
|
||||
|
|
|
@ -1,15 +1,7 @@
|
|||
module Ci
|
||||
class UpdateBuildQueueService
|
||||
def execute(build)
|
||||
tick_for(build, build.project.runners)
|
||||
|
||||
if build.project.group_runners_enabled?
|
||||
tick_for(build, Ci::Runner.belonging_to_parent_group_of_project(build.project_id))
|
||||
end
|
||||
|
||||
if build.project.shared_runners_enabled?
|
||||
tick_for(build, Ci::Runner.shared)
|
||||
end
|
||||
tick_for(build, build.project.all_runners)
|
||||
end
|
||||
|
||||
private
|
||||
|
|
Loading…
Reference in a new issue