Load config settings from yaml and environment variables.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
spec
.gitignore
.rspec
.travis.yml
Gemfile
Guardfile
MIT-LICENSE
README.md
Rakefile
static_config.gemspec

README.md

Example

MyAppConfig = StaticConfig.build do
  first do
    env_yaml 'my_app_config'
    file Rails.root.join('config/my_app.yml'), :section => Rails.env
  end
  env 'MY_APP'
end

Now you have an object MyAppConfig that you can use anywhere.

For instance, if your config/my_app.yml looks like this:

development:
  user:
    selected:
      color: orange

You could get orange by doing this:

MyAppConfig.user.selected.color

You could override it at runtime by setting the environment variable MY_APP_USER_SELECTED_COLOR.

You can also override the entire config/my_app.yml file by storing some yaml in an environment variable called my_app_config.

To get your config to reload on each request in Rails, add this:

Rails.application.config.to_prepare do
  MyAppConfig.reload!
end

Build Status