目次
credentialsとは?
Rails5.2から使われるようになった、暗号化・復号化できるファイル。
詳細は以下を参照してみてください!!
Rails5.2から追加された credentials.yml.enc のキホン
環境
rubyの環境
ruby 2.5.1
Railsの環境
Rails 5.2.2.1
データベース
Mysql@5.6
.bash_profile
eval "$(rbenv init-)"
export PATH="~/.rbenv/shims:/usr/local/bin:$PATH"
export PATH="usr/local/opt/mysql@5.6/bin:$PATH"
その他aliasの設定
起きた事象
credential.ymlを編集する。
自分のファイルにmaster.keyの存在も確認していたので、このサイトの通りにやってみたらいけるかもしれないと思っていました。
Rails5.2から追加された credentials.yml.enc のキホン
コマンド(ターミナル)
EDITOR="vi" bin/rails credentials:edit
起きたエラー
Your Ruby version is 2.3.7, but your Gemfile specified 2.5.1
検証
検証①Rubyのバージョン確認
・・・・・・うーん、Rubyのバージョンがおかしいと言われているので一応rubyのバージョンも確認してみました。
コマンド(ターミナル)
ruby -v
結果
ruby2.5.1p57(2018-03-29version63029)[x86_64-darwin18]
2.5.1ですねぇ・・・
検証②rbenvでRubyを2.3.1にしてbundle installを実行
Rubyのバージョンが切り替わらない時の対処法!
Rubyのバージョンが2.3.1出ないといけないのかと思い、rbenvでバージョンを切り替え。
bundle installができなかった。。。
どうしたら解決したか
EDITOR=”vi” rails credentials:editで実行する。
bash_profileで設定していたPATHの設定が原因でした!
これは正直盲点で、簡単だからと言ってすぐコピペで試してはいけないことを再認識。
PATHを通すというのは例えばrailsコマンドを使う際に実は
/usr/bin/(rails)
などという記述が省略されているんですね。
今回はbin/railsコマンドを入力しており、bin/railsはRubyの2.3.1のバージョンを参照していたのが原因でした。
やっぱり自分の環境ごとに記述を変えなければいけないですね。
間違い探しになってしまうので意外と長時間悩んでしまいますね・・・