cronでRVMのRubyを使う

現在のRVMでは、以下の方法では、
line 2: rvm: command not found
というエラーになります。
今はもっとよい方法があるので、以下をご覧ください。
cronでRVMのRubyを使う | Memorandum

RVMで複数のRuby環境がある場合に、Railsアプリケーションのためのcronをどうするか? Rubyのパスはフルパス指定すればいいが、gemがRVMのgemを見に行かないのが問題。RVM環境でcronを実行する必要がある。
[1] crontabでrvmのrubyを使う - 橋本詳解
[2] RVM and cron in production
[3] rvm+railsなアプリケーションをcronで動かす - sanojimaru.com
[1]の方法にしてみた。
以下のような感じ。
cron用スクリプト
/home/pistolfly/app_dir/cron/delete_sessions.sh

source /home/pistolfly/.rvm/scripts/rvm
rvm use 1.8.7 > /dev/null
cd /home/pistolfly/app_dir
ruby script/runner -e production "ActiveRecord::SessionStore::Session.delete_all(['sessions.updated_at < ?', 1.day.ago])"

cronの設定

$ crontab -e
*/10 * * * * sh /home/pistolfly/app_dir/cron/delete_sessions.sh

「cronでRVMのRubyを使う」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

thirteen + 2 =