Closed yuka-mm closed 8 months ago
Herokuなどデプロイ先によってはwheneverを使用せずにデプロイ先のサービスによってcronの機能が使えるものがありますのでまずはそちらを利用できないか調べてみると良いかもです
Fly.ioで同じようなものを調べてみたのですがわからなかったので、補足でいただいた通り質問を調べてみて解決しました!
require File.expand_path(File.dirname(__FILE__) + '/environment')
set :job_template, "/bin/zsh -l -c ':job'"
job_type :rake, "export PATH=\"$HOME/.rbenv/bin:$PATH\"; eval \"$(rbenv init -)\"; cd :path && RAILS_ENV=:environment bundle exec rake :task :output"
schedule.rb側でパスを通したところ無事起動しました。 ありがとうございました!
現在の状況
Rakeとclone、wheneverを使用し通知機能を実装したいです。 Rakeとschedule.rbは下記のように記述ました。
時間になっても通知が送られてこないため、logを確認すると下記のように表示されていました
Rubyのバージョンは3.2.2を使用しているのですが、なぜか2.6が表示されており、同じエラーが続いています。
試したこと
・最初、Ruby側のバージョンが違うことに気がつかず、指示にある通りbundle update --bundlerと、gem install bundler:2.5.6を行いました。最初2.5.4が見つかりませんと出ていたのがupdateしたことで2.5.6になったもののエラーの内容は変わらずでした。 ・以下記事を見つけることができなかったのでGTPに聞きながら試した内容です
「Ruby自体のバージョンは3.2.2である一方、Gemのパスには3.2.0が指定されているようです。これは通常とは異なる状況で、RubyのバージョンとGemのパスは一致するべきです。 このような問題は、Rubyのバージョンアップ後に古いバージョンのGem設定が残ってしまっている場合などに発生することがあります。この問題を解決するためには、Gemの設定をリセットする必要があります。」
とのことで、バックアップをとり以下の流れを行う
解決したいこと
・これまでの操作でbundle exec rake reward:send_rewardコマンドでRakeを実行しようとした時warningが出てしまっていています
ファイルを辿ってみて、7.1.2と7.1.3の2種類のファイルが出来上がってしまっている状態なのですが、できれば7.1.2のバージョンを使用したい場合、7.1.3のファイルを手動で削除し、rails7.1.2自体をインストールし直せば直るでしょうか?
・下記のclone実行部分のエラーで他にどんな対策があるでしょうか
以上2点よろしくお願いします。