4

Amazon の Elastic Beanstalk でホストしている Rails アプリがあります。タスクをスケジュールするためにWhenever gemを使用したいのですが、Wh​​enever gemのドキュメントとこのRailscastの両方でCapistranoとの統合について言及しています。サーバーの管理に Capistrano を使用していないので、Whenever を使用するためだけにインストールすると、現在のサーバーの動作が台無しになるかどうかわかりません。

おそらく、私の質問をする別の方法は、Capistrano の deploy.rb ファイルにこのコマンドを含めるとどうなるかということです。また、Capistrano を使用しない場合、これを行うための代替手段はありますか?

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

2 に答える 2

8

When this thread in the When gem Google Groupを読んだところ、Capistrano なしで When を使用できることがわかりましたが、それは、Capistrano が変更をトリガーする代わりに、Crontab を手動でトリガーする必要があることを意味します. これを行うには、サーバーで次のコマンドを使用します。

whenever -i

于 2013-03-03T21:32:46.080 に答える
0

ドキュメントに基づくと、いいえ、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 に答える