Configatron - легкая конфигурация ваших приложений

Posted on November 23, 2008
Для конфигурации программ очень часто используется конфигурация из YAML примерно таким кодом:

config = OpenStruct.new(YAML.load_file("#{RAILS_ROOT}/config/app.yml"))
env_config = config.send(RAILS_ENV)
config.common.update(env_config) unless env_config.nil?
::AppConfig = OpenStruct.new(config.common)
Но комманда Mack сделала поистинне замечательный gem - Configatron. Который позволяет перевести работу с конфигурационными файлами на новый уровень. Например, загрузка исходных данных может быть проведена как из Hash так и из Yaml файла.

require 'rubygems'
require 'configatron'
 
store = Configatron::Store.new
store.configure_from_yaml('config.yml')
После чего к каждой переменной можно будет обратится через:
store.asterisk.port
Полное API можно посмотреть на странице Configatron
P.S. Спасибо Dekart за замечание.