Module: Configliere::ConfigFile

Defined in:
lib/configliere/config_file.rb

Overview

ConfigFile – load configuration from a simple YAML file

Instance Method Summary collapse

Instance Method Details

#read(handle) ⇒ Object

Load params from disk.

  • file is in YAML format, as a hash of handle => param_hash pairs

  • filename defaults to Configliere::DEFAULT_CONFIG_FILE (~/.configliere, probably)



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/configliere/config_file.rb', line 16

def read handle
  filename = filename_for_handle(handle)
  begin
    params = YAML.load(File.open(filename)) || {}
  rescue Errno::ENOENT => e
    warn "Loading empty configliere settings file #{filename}"
    params = {}
  end
  params = params[handle] if handle.is_a?(Symbol)
  deep_merge! params
end

#save!(handle) ⇒ Object

save to disk.

  • file is in YAML format, as a hash of handle => param_hash pairs

  • filename defaults to Configliere::DEFAULT_CONFIG_FILE (~/.configliere, probably)



31
32
33
34
35
36
37
38
# File 'lib/configliere/config_file.rb', line 31

def save! handle
  filename = filename_for_handle(handle)
  if handle.is_a?(Symbol)
    ConfigFile.merge_into_yaml_file filename, handle, self.export
  else
    ConfigFile.write_yaml_file filename, self.export
  end
end