やったこと
環境変数をファイルで管理する dotenv を使ってみます。
確認環境
$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17]
$ rails --version
Rails 5.2.4.1
調査
install
Gemfile
gem 'dotenv-rails', groups: [:development, :test]
$ bundle install
RAILS_ENV=development用の環境変数をセット
.env.development
HOGE1='hoge1hoge1'
HOGE2='hoge2hoge2'
rails console
$ bundle exec rails c
Running via Spring preloader in process 47643
Loading development environment (Rails 5.2.4.3)
irb(main):001:0> ENV['HOGE1']
=> "hoge1hoge1"
irb(main):002:0> ENV['HOGE3']
=> nil
irb(main):003:0> ENV['HOGE2']
=> "hoge2hoge2"
RAILS_ENV=test用の環境変数をセット
.env.test
HOGE1='test hoge1hoge1'
HOGE2='test hoge2hoge2'
rails console
$ RAILS_ENV=test bundle exec rails c
Running via Spring preloader in process 48051
Loading test environment (Rails 5.2.4.3)
irb(main):001:0> ENV['HOGE1']
=> "test hoge1hoge1"
irb(main):002:0> ENV['HOGE3']
=> nil
irb(main):003:0> ENV['HOGE2']
=> "test hoge2hoge2"
注意!!!
現在、ドキュメントにあるこの gem はなくなってしまったみたいです。
gem 'gem-that-requires-env-variables'