4

我有一个在 Amazon 的 Elastic Beanstalk 上托管的 Rails 应用程序。我想使用Whenever gem来安排任务,但是Whenever gem 文档和这个Railscast都提到了与Capistrano 的集成。我没有使用 Capistrano 来管理我的服务器,所以我不确定它是否会扰乱我的服务器现在的运行方式,如果我安装它只是为了使用时。

也许问我问题的另一种方式是在 Capistrano 的 deploy.rb 文件中包含此命令有什么作用,如果我不使用 Capistrano,是否有替代方法:

set :whenever_command, "bundle exec whenever"
require "whenever/capistrano"
4

2 回答 2

8

我在Whenever gem Google Group 中阅读了这个帖子,发现您可以在没有 Capistrano 的情况下使用Whenever,但这意味着您需要手动触发 Crontab 而不是 Capistrano 触发更改。为此,请在您的服务器上使用此命令:

whenever -i

于 2013-03-03T21:32:46.080 回答
0

根据文档,不,您不必使用 Capistrano。

每当 Capistrano 执行以下操作时,它会注册几个挂钩,以便在部署期间的任何任务时运行

Capistrano::Configuration.instance(:must_exist).load do
  # Write the new cron jobs near the end.
  before "deploy:finalize_update", "whenever:update_crontab"
  # If anything goes wrong, undo.
  after "deploy:rollback", "whenever:update_crontab"
end
于 2013-02-19T21:01:27.413 回答