13

約12台のサーバーが大規模に展開されています。Whenever gemを使用したいのですが、cronジョブを実行するマシンを指定する方法がわかりません。これらのジョブは、バックグラウンドジョブを実行するサーバーでのみ実行する必要があります。

これを指定する方法はありますか?

4

2 に答える 2

18

プロジェクトを Capistrano でデプロイし、デフォルトのWhen レシピを使用する場合、新しい Capistrano ロールを作成できます。

role :whenever, "192.168.1.1"

deploy.rbファイルに役割を設定します

set :whenever_roles, "whenever"

このようにして、タスクは指定されたサーバーでのみ実行されます。

于 2011-02-21T11:20:18.247 に答える
1

when は db ロールに対して実行するように事前設定されているため、db ロールがバックグラウンド マシンのロールでもある場合は、「role :whenever, "192.168.0.1"」ハックを実行する必要はありません。コードを見る

https://github.com/javan/whenever/blob/master/lib/whenever/capistrano.rb#L2

于 2012-01-09T20:02:58.313 に答える