公式のgitHubはこちら
gemのInstall
gemfileに以下を追加して、bundle installを実行Gemfile
# cron
# https://github.com/javan/whenever
gem 'whenever', :require => false
設定ファイル(schedule.rb)の作成
projectのディレクトリに移動してから、設定ファイル生成コマンドを実行$ cd /apps/[my-project]
$ wheneverize .
そうすると./config/schedule.rb
が作成されます。schedule.rbの作成の設定
呼び出し可能な job type
wheneverでは、下記の4つのjob typeをschedule.rbに設定することができます。job type | メソッド | 使用例 |
---|---|---|
bashコマンド | command | command “/usr/bin/some_great_command” |
rakeタスク | rake | rake “some:great:rake:task” |
Railsのメソッド | runner | runner “MyModel.some_method” |
scriptファイル | script | script “script/my-script.sh” |
時間の設定
3時間毎every 3.hours do
rake "my:rake:task"
end
毎日 AM4:30に実行every 1.day, :at => '4:30 am' do
rake "my:rake:task"
end
1時間毎に実行every :hour do # Many shortcuts available: :hour, :day, :month, :year, :reboot
runner "SomeModel.ladeeda"
end
日曜日pm12時に実行every :sunday, :at => '12pm' do # Use any day of the week or :weekend, :weekday
runner "Task.do_something_great"
end
27~31日の00:00に実行every '0 0 27-31 * *' do
command "echo 'you can use raw cron syntax too'"
end
このcron(分,時,日,月,曜日)の書き方が慣れているので普段はこれを使っています。crontabへの反映,削除
上記で設定した内容をcrontabへ反映したり、削除させるための、下記コマンドが用意されています。crontabへの追加
whenever -w
crontabからの削除
whenever -c
0 件のコメント:
コメントを投稿