需要があるかどうかもわからないし、他にやり方があるかもしれない
schedulerコンフィグにargsがHashになるよう設定する
resque_scheduler.yml
sample_queue:
every: 60s
class: SampleQueue
# Hashになるように設定する
args:
time: "this will be replaced"
before_delayed_enqueue フックでわたってきたHashを書き換える
class SampleQueue
def self.before_delayed_enqueue(*args)
# schedulerがenqueuする直前によばれ
# argsにparseされたargsが配列でわたってくる
# おそらくこんな用途に使うものでないのか
# 戻り値とか無視されるのでHashで渡すようして
# そのHashの中身を上書き
# ソース見る限りそれをそのまま渡してそう
param = args.shift
param["time"] = Time.now.to_i
end
def self.perform(params)
time = params["time"]
end
end