ファイル
btrc-hub/backend/lib/tasks/counts_exports.rake
T
2026-10-28 19:28:11 +09:00

16 行
533 B
Ruby

namespace :counts do
desc 'Process the persistent Counts export queue (run under a process supervisor)'
task export_worker: :environment do
stopping = false
['TERM', 'INT'].each { |signal| Signal.trap(signal) { stopping = true } }
at_exit do
path = CountsExportJobs.directory.join("#{ CountsExportJobs.worker_id }.json")
File.unlink(path) if path.exist?
end
until stopping
worked = Rails.application.executor.wrap { CountsExportJobs.work_one }
sleep(1) unless worked
end
end
end