每当没有Capistrano的宝石时,我可以使用Rails吗?

时间:2013-02-19 20:55:58

标签: ruby-on-rails capistrano whenever

我有一个我在亚马逊的Elastic Beanstalk上托管的Rails应用程序。我想使用Whenever gem来安排任务,但Whenever gem文档和this Railscast都提到了与Capistrano的集成。我没有使用Capistrano来管理我的服务器,所以我不确定它是否会弄乱我的服务器现在如何操作,如果我只是为了使用Whenever而安装它。

也许另一种问我问题的方法是在Capistrano的deploy.rb文件中包含这个命令是做什么的,如果我不使用Capistrano就可以替代这样做:

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

2 个答案:

答案 0 :(得分:8)

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

whenever -i

答案 1 :(得分: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