RubyGems Navigation menu

co_config 0.2.1

# CoConfig [![Circle CI](https://circleci.com/gh/comparaonline/co_config.svg?style=svg)](https://circleci.com/gh/comparaonline/co_config) This is a simple gem to load configuration files on rails. ## Installation Add this line to your application's Gemfile: ```ruby gem 'co_config' ``` And then execute: $ bundle Or install it yourself as: $ gem install co_config ## Usage Create a `configuration.rb` file on your rails application's config folder. This file will indicate which files are loaded. ```ruby # To load the test.yml file into the CoConfig::TEST hash load 'test' # To validate the configuration you could use load 'test2' { |c| c.token.present? } # or load 'test3' { |c| raise if token.empty? } ``` YAML files must have a root key called like the current `Rails.env`. A key called `defaults` can be used to specify defaults for undefined environments. ```yaml # test.yml --- development: value: 1 ``` ```yaml # test2.yml --- defaults: token: 'MYAWESOMETOKEN' ``` To read your configuration you can access the hash (with indifferent access) at `CoConfig::CONFIG_NAME_UPPERCASE` ## To use on your engine/gem If you want to load configuration from a different path (e.g. your engine's directory), you can do this: ```ruby # lib/my_engine/railtie.rb require 'rails/railtie' module MyEngine class Railtie < ::Rails::Railtie config.before_configuration do CoConfig.load(MyEngine::Engine.root.join('config')) end end end # lib/my_engine.rb require 'my_engine/railtie' module MyEngine class Engine < ::Rails::Engine end end ``` It will load `my_engine/config/configuration.rb`, and in there, `load` method calls will include configuration files in the same directory. ## Development After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/comparaonline/co_config. ## License The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).

Gemfile:
= Copy to clipboard Copied!

install:
=

Versions:

  1. 0.2.2 - November 18, 2015 (8 KB)
  2. 0.2.1 - November 18, 2015 (9 KB)
  3. 0.2.0 - November 18, 2015 (8 KB)
  4. 0.1.1 - September 16, 2015 (8 KB)
  5. 0.1.0 - September 16, 2015 (8 KB)

Runtime Dependencies (2):

activesupport < 5, >= 3.0
rails < 5, >= 3.0

Development Dependencies (3):

bundler ~> 1.9
rake ~> 10.0
rspec ~> 3

Owners:

Authors:

  • Ezequiel Rabinovich

SHA 256 checksum:

403d1468fb23dd5e0059ef9cbac621a03cb36062f35abbd7713fae95f4565cbc

Total downloads 17,945

For this version 2,201

License:

MIT

Required Ruby Version: >= 0

Links: