Description
Since it no longer just deals with yaml files as an input, blackrat_yaml_config has been renamed to config_files Configuration file manager.
Features
Searches for first match in multiple directories for configuration file Allows for dynamically updated or static config files
Example
require 'config_files'
class Dummy
include ConfigFiles #mixin the config_directories and config_files generators
#search directories (in order). The system will search for the file in the following directories
config_directories :etc=>['~/.dummy','/opt/dummy/config','/etc/default/dummy','/etc']
#The dummy.yml and another_yaml_file.yml will be pre-loaded.
static_config_files :dummy, :another_yaml_file
#yet_another_yaml_file.yml will be read every time the .yet_another_yaml_file method is accessed.
dynamic_config_files :yet_another_yaml_file
def use_config
some_method(Dummy.dummy[:key]) #extract the constant values from the :key in dummy.yml
another_method(Dummy.yet_another_yaml_file[:another_key]) #extract the constant value from the :another_key in yet_another_yaml_file.yml
end
end
Todo
Allow for different keys to be stored in files in different subdirectories to allow for overridable defaults