This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon May 11 21:06:48 -0700 2009 | |
| |
LICENSE | Wed Mar 11 18:11:34 -0700 2009 | |
| |
NOTICE | Wed Mar 11 18:11:34 -0700 2009 | |
| |
README.rdoc | Wed Mar 11 18:11:34 -0700 2009 | |
| |
Rakefile | Mon May 18 11:57:54 -0700 2009 | |
| |
VERSION.yml | Tue Aug 25 07:28:42 -0700 2009 | |
| |
features/ | Mon May 11 21:06:48 -0700 2009 | |
| |
lib/ | Mon Aug 24 15:14:13 -0700 2009 | |
| |
mixlib-config.gemspec | Tue Aug 25 07:28:43 -0700 2009 | |
| |
spec/ | Mon Aug 24 15:14:13 -0700 2009 |
README.rdoc
Mixlib::Config
Mixlib::Config provides a class-based configuration object, like the one used in Chef. To use in your project:
require 'rubygems'
require 'mixlib/config'
class MyConfig
extend(Mixlib::Config)
configure do |c|
c[:first_value] = 'something'
c[:other_value] = 'something_else'
end
end
Or…
class MyConfig
extend(Mixlib::Config)
first_value 'something'
other_value 'something_else'
end
To check a configuration variable:
MyConfig.first_value # returns 'something' MyConfig[:first_value] # returns 'something'
To change a configuration variable at runtime:
MyConfig.first_value('foobar') # sets first_value to 'foobar'
MyConfig[:first_value] = 'foobar' # sets first_value to 'foobar'
You should populate your class with the default values for every configuration variable that might be accessed. If you try and access a variable that does not exist, Mixlib::Config will throw an <ArgumentError>.
To load a ruby configuration file (which will evaluate in the context of your configuration class):
MyConfig.from_file('your_config_file.rb')
Enjoy!







