wheneverというgemを使うことで、rakeタスクなどの任意のタイミングや、時間感覚で、実行させることができます!
具体的にいうと、wheneverは、Cronという、タスク管理機能を、Rubyで簡単に扱えるようにするためのライブラリということです!
🤷まず、Cronって何?
Cronとは、Unix系のOS(Linux)などに含まれる、スケジューリングツールで、指定した時間に、コマンドや、プログラムを実行してくれるシステムのことである。Cronの設定は、crontab
ファイルを編集して行うんだが、設定が少し難しいそうです!
そんな難しいらしいCronの設定を、rubyで簡単に扱えるようにしたのが、wheneverというライブラリというわけです!
gemファイルに以下の内容を追記します!
gem 'whenever', require: false
bundle installも忘れずに!
bundle install
wheneverは、アプリケーション側から使わないのでrequire: falseを付けます。これで、想定外の挙動を減らすことができます
wheneverの設定ファイルschedule.rbを作成
ターミナルにて以下のコマンドを実行します
bundle exec wheneverize
すると、
config/schedule.rbファイルが作成されます。