https://github.com/kickstarter/configs
Ruby library for managing YAML config
https://github.com/kickstarter/configs
Last synced: about 1 year ago
JSON representation
Ruby library for managing YAML config
- Host: GitHub
- URL: https://github.com/kickstarter/configs
- Owner: kickstarter
- License: mit
- Created: 2012-06-10T20:38:03.000Z (about 14 years ago)
- Default Branch: main
- Last Pushed: 2023-09-28T12:42:36.000Z (almost 3 years ago)
- Last Synced: 2025-04-30T04:46:37.146Z (about 1 year ago)
- Language: Ruby
- Homepage:
- Size: 40 KB
- Stars: 17
- Watchers: 128
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Configs
[](https://github.com/kickstarter/configs/actions/workflows/test-release.yml)
Loads and manages config/*.yml files.
Searches through a few locations to find the right environment config:
1. config/$name/$env.yml
2. config/$name.yml (with $env key)
3. config/$name/default.yml
3. config/$name.yml (with 'default' key)
## Installation
Add this line to your application's Gemfile:
gem 'configs'
And then execute:
$ bundle
Or install it yourself as:
$ gem install configs
## Usage
If you have a `config/foo.yml`, then anywhere you need to read the file
you can use `Configs[:foo]` as a hash.
Example:
# config/foo.yml
development:
hello: world
# Elsewhere (even in a config/initializer)
Configs[:foo][:hello]
=> 'world'
You can include ERB in the YAML files:
# config/foo.yml
development:
database_password: <%= ENV['DATABASE_PASSWORD'] %>
## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Added some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request
## License
Copyright 2014 Kickstarter, Inc
Released under an [MIT License](http://opensource.org/licenses/MIT)