##はじめに
Railsでは各APIキーなどをcredentials.ymlなるファイルで管理?するらしい。
このファイルは暗号化されているようで普通に開いて編集することはできず、コマンドから開くみたいでWindows向けの文献が少なかったので、需要はあまりなさそうですが上手くいった方法を書いておこうと思います。
##環境
Windows10
ruby 2.6.6
Rails 6.0.3.1
VSCode 1.48.1
##まずは普通にやってみる
「rails credentials:edit」でファイルを開く。
C:\Users\sample> rails credentials:edit
すると、
No $EDITOR to open file in. Assign one like this:
EDITOR="mate --wait" bin/rails credentials:edit
For editors that fork and exit immediately, it's important to pass a wait flag,
otherwise the credentials will be saved immediately with no chance to edit.
なにやらEDITORを指定して実行しなければいけないみたいなのですが、Windous環境で「EDITOR="〇〇 --wait" bin/rails credentials:edit」を実行しようとすると
'EDITOR' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
と出てしまいます。
そのため、Windowsの環境変数に「EDITOR」を追加します。
##環境変数の設定
Windows10の場合「コントロールパネル」の「システム」より「システムの詳細設定」→「環境変数」と進みます。
※平気だとは思いますが環境変数はむやみに編集したり、削除したりしないでください。
すると「ユーザー環境変数」と「システム環境変数」の2つが表示されると思います。
この内の「ユーザー環境変数」に「EDITOR」という変数がなければ「新規」から追加します。
「変数名」を「EDITOR」とし、「変数値」には使うエディタ(今回はVSCode)の場所を入力します。
エディタの場所は「ファイルの参照」から選んでも問題ありませんが、下の画像のように「"場所"-w -n」と直してください。
※「-w」が無いとcredentials.ymlファイルを編集しても保存できないみたいです。「-n」は新規ウィンドウで開くため。
##もう一度やってみる
その前にコマンドプロンプトが開いていたら、一旦閉じて再起動します(環境変数を読みに行くので)。
C:\Users\sample> rails credentials:edit
指定のエディタでファイルが開けば成功です。
一応、保存ができるか確認してみてください。
##おしまい
変数値の書き方を間違えると、ファイルが開かなかったり保存がされなかったりしたので疑ってみてください。