railsで定期実行 wheneverの使い方

rails でcronを管理して定期実行する方法

まずgemをインストール

$ gem 'whenever', require: false


$ bundle install


バンドルできたら設定ファイルの作成をします

$ bundle exec wheneverize .



config > schedule.rb

# Rails.root「railsメソッド」を使用するのに必要
require File.expand_path(File.dirname(__FILE__) + "/environment")
# cronを実行する環境変数(:development, :product, :test)
rails_env = ENV['RAILS_ENV'] || :development
# cronを実行する環境変数をセットする
set :environment, rails_env
#1時間ごとに実行
every :hour do
  rake 'article_state_check:article_state'
end


エラーの確認

$ bundle exec whenever 


設定されてるcronの確認

$ crontab -l