2019-02-15 15:39:39 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module ObjectPool
|
2020-04-08 14:13:33 +05:30
|
|
|
class ScheduleJoinWorker # rubocop:disable Scalability/IdempotentWorker
|
2019-02-15 15:39:39 +05:30
|
|
|
include ApplicationWorker
|
|
|
|
include ObjectPoolQueue
|
|
|
|
|
|
|
|
def perform(pool_id)
|
|
|
|
pool = PoolRepository.find_by_id(pool_id)
|
|
|
|
return unless pool&.joinable?
|
|
|
|
|
|
|
|
pool.member_projects.find_each do |project|
|
|
|
|
next if project.forked? && !project.import_finished?
|
|
|
|
|
|
|
|
ObjectPool::JoinWorker.perform_async(pool.id, project.id)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|