当在rails中使用when gem来设置cron作业时,是否可以有多个schedule.rb文件?我期待有一个常规的schedule.rb文件和一个将要部署到不同服务器并具有自己的特定报告环境的reports_schedule.rb文件。多个schedule.rb文件与每当gem
如何使用schedule.rb文件?这可能吗?
当在rails中使用when gem来设置cron作业时,是否可以有多个schedule.rb文件?我期待有一个常规的schedule.rb文件和一个将要部署到不同服务器并具有自己的特定报告环境的reports_schedule.rb文件。多个schedule.rb文件与每当gem
如何使用schedule.rb文件?这可能吗?
它看起来像是有可能有点丑陋。查看源代码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
为我工作做一些快速测试用时命令。尽管未尝试在部署中使用它。
不确定是否在询问问题后添加了这项功能,但您现在似乎可以执行基于角色的安排:请参阅自述文件:https://github.com/javan/whenever