状況
wheneverをローカル環境で動作確認後、本番環境にデプロイしました。
一度目はコードを間違えており、 undefined method
エラーが出ました。
その後、コードを修正して再度デプロイしたところ、以下のエラーが出るようになりました。
検索したところ、lib以下にあると読まれないなどの記事がありましたが、models以下にあるため該当しないと考えました。
どなたかのお知恵をお借りできれば幸いです。
# log/cron.log Running via Spring preloader in process 7298 Please specify a valid ruby command or the path of a script to run. Run 'bin/rails runner -h' for help. uninitialized constant Item
コード
bash
1# crontab -l 2# Begin Whenever generated tasks for: /var/www/rails/myapp/config/schedule.rb at: 2019-06-09 13:33:40 +0000 30 3,11,19 * * * /bin/bash -l -c 'cd /var/www/rails/myapp && bundle exec bin/rails runner -e production '\''Item.reload'\'' >> /var/www/rails/myapp/log/cron.log 2>&1' 4 5# End Whenever generated tasks for: /var/www/rails/resale-manager/config/schedule.rb at: 2019-06-09 13:33:40 +0000
# config/schedule.rb require File.expand_path(File.dirname(__FILE__) + "/environment") set :output, "#{Rails.root}/log/cron.log" set :environment, :production every 1.day, at: '02:00' do runner 'Item.reload' end
# app/models/item.rb class Item < ApplicationRecord ... def self.reload ... end end
環境
ruby: 2.5.0
rails: 5.2.3
サーバー: Amazon Linux 2 AMI
回答1件