在rails中使用什么时候使用gem来设置schedule.rb作业时,可以有多个cron文件吗?我希望有一个常规的schedule.rb文件和一个reports_schedule.rb文件,将部署到不同的服务器,它有自己的特定报告环境。
什么时候使用schedule.rb文件?这个是可能的吗?
发布于 2013-05-05 21:58:06
虽然看起来有点丑陋,但还是有可能的。看一下源代码on job_list.rb:25 whenever just does an instance eval。因此,您可以执行类似以下的操作。
schedule.rb
#Load reporting schedules
instance_eval(File.read('reporting_schedule.rb'), 'reporting_schedule.rb')
# All your regular jobs
# ...reporting_schedule.rb
#Need some way to know if you are on the reporting server
if `hostname` =~ /reporting_server/
# All your reporting jobs
# ...
end对我来说,使用Worked命令进行一些快速测试很管用。不过,我还没有尝试在部署中使用它。
发布于 2013-08-20 22:34:18
不确定这是否是在提出问题之后添加的,但您现在似乎能够进行基于角色的调度:请参阅https://github.com/javan/whenever上的自述文件
https://stackoverflow.com/questions/15843075
复制相似问题