Как обновить args для задания cron Sidekiq после инициализации в Rails - PullRequest
0 голосов
/ 06 мая 2019

Я использую гем sidekiq для обработки фонового задания и задание sidekiq-cron для планирования задания на данный период времени.

#config/schedule.yml

my_first_job:
  cron: "*/5 * * * *"
  class: "HardWorker"
  queue: hard_worker

Я хочу передать дату (динамическую) в качестве аргумента работнику вschedule.yml.

Загрузка config/schedule.yml

#initializers/sidekiq.rb
schedule_file = "config/schedule.yml"

if File.exist?(schedule_file) && Sidekiq.server?
  Sidekiq::Cron::Job.load_from_hash YAML.load_file(schedule_file)
end

job = Sidekiq::Cron::Job.find("my_first_job")
job.args = [Date.yesterday, Date.today]

Когда я нахожу Sidekiq::Cron::Job.find("my_first_job"), я вижу, что работа обновляется с указанием даты.Но я не вижу дату в http://localhost:3000/sidekiq/cron после перезапуска Sidekiq.

Как обновить args в задании Sidekiq cron после загрузки?Sidekiq::Cron::Job.load_from_hash YAML.load_file(schedule_file)

...