Envvy

Templatize Environment Variables in Rails

Installation

Add this line to your application's Gemfile:

gem 'envvy'

And then execute:

$ bundle

Or install it yourself as:

$ gem install envvy

Usage

Add an env_vars.yml file to your Rails app's configuration folder. It will be read before_configuration, and set the variables before your Rails app's initialization flow.

config:
  some_key: secret
  storage: "/mnt/storage"
js_config:
  xx_api: http://localhost:3002
  • Keys under config will be available in ENV, with capitalized names.
  • Keys under js_config will be available in the window.js_env variable defined in the js_env.js file in your assets.

Environnement specific variables

It's possible to define environnement specific values

config:
  some_key: default_value
js_config:
  some_other_key: other_default_value

development: 
  config:
    some_key: development_value
  js_config:
    some_other_key: other_development_value

test:
 config:
   some_key: test_value
 js_config:
   some_other_key: other_test_value    

Contributing

  1. Fork it ( https://github.com/[my-github-username]/envvy/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request