IT技術にまつわる実験ノート

「長編を書くより、短編を数多く完成させてください。それが上達への近道です」 by 手塚治虫

Rails5 で figaro を使ってみる

はじめに

ここでは以下の記事を参考にして figaro を使ってみることにする。

 

使ってみる

ざっくりとアプリを作成する。

 

gem をインストールする。

  • echo 'gem "figaro"' >> Gemfile
  • bundle

 

figaro のコマンドで初期設定をする。

  • bundle exec figaro install

 

これで、config/application.yml が作成されて、.gitignore に設定が追加される。

f:id:matt-note:20190417143424p:plain

 

.gitignore を確認してみる。

figaro のコマンドで、自動的に config/application.yml を Git で管理しないようになっている。これでついうっかり GitHub に push してしまうことを防止できる。

f:id:matt-note:20190417143532p:plain

 

環境変数を設定して、ビューで表示してみる

config/application.yml で環境変数を設定する。

f:id:matt-note:20190417144428p:plain

 

controller を作成する。

  • bin/rails g controller Home index

 

config/routes.rb でルーティングを設定する。

f:id:matt-note:20190417144614p:plain

 

ビューで環境変数を ENV["HOGE"] として参照する。

  • echo '<h1><%= ENV["HOGE"] %></h1>' > app/views/home/index.html.erb

 

サーバーを起動してアクセスしてみる。

f:id:matt-note:20190417144825p:plain

-> figaro で環境変数を設定して、アプリから環境変数を参照することができた。

 

development 環境では、config/application.yml で設定した値が自動的に ENV["xxx"] としてアプリから読み込めるようになっている。

 

Heroku で使ってみる

Heroku にログインする。

  • heroku login

f:id:matt-note:20190417145517p:plain

 

Heroku でアプリを作成する。

  • heroku create figaro-sample

f:id:matt-note:20190417145629p:plain

 

config/master.key の値をコピペして、config/application.yml で環境変数 RAILS_MASTER_KEY を設定する。

f:id:matt-note:20190417150659p:plain

 

次のコマンドで、Heroku での環境変数をまとめて設定できる。

  • figaro heroku:set -e production

f:id:matt-note:20190417150832p:plain

-> コマンド一発で Heroku での環境変数を設定できた。

 

アプリを Heroku に push してみる

リモートリポジトリを追加する。

  • heroku git:remote -a figaro-sample

 

コミットして push する。

  • git add .
  • git commit -m "first commit"
  • git push heroku master

 

 しばらく待つと、デプロイが完了する。

f:id:matt-note:20190417152355p:plain

-> Heroku で環境変数を設定して、アプリから環境変数を参照することができた。

 

まとめ

Heroku で環境変数を管理したいときは、figaro を使うとサクッと設定できる。