我正在使用随时为rails应用程序安排任务。
我的任务如下:
every 24.hours do
command "do_this"
rake "do_that"
end
我的观点是,当我把它写到我的crontab时,每当-w,我看到它生成了两个同时运行的独立任务。问题是,两者在逻辑上都是一个序列,这意味着,只要命令“do_this”已经成功运行,rake任务“do_that”应该运行。
我试图像“do_this”&&耙“do_that”但我收到语法错误。
是否存在在任何时候在任务之间创建这种依赖性的技巧?
crontab是否同时并行执行作业,还是处理队列中同时安排的N个任务?
答案 0 :(得分:6)
我认为你可以做两件事:
(1)从rake任务运行命令:
task :do_that => :environment do
system "do_this"
...
end
将schedule.rb文件简化为:
every 24.hours do
rake "do_that"
end
(2)从命令行运行所有内容:
every 24.hours do
command "do_this && rake do_that"
end