Class: Natour::Config
- Inherits:
-
Object
- Object
- Natour::Config
- Defined in:
- lib/natour/config.rb
Class Method Summary collapse
Class Method Details
.load_file(filename, default: {}, dirs: [Dir.home, Dir.pwd]) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/natour/config.rb', line 7 def self.load_file(filename, default: {}, dirs: [Dir.home, Dir.pwd]) configs = dirs.map do |dir| config = YAML.safe_load( File.read(Pathname(dir).join(filename)), permitted_classes: [Symbol] ) config || {} rescue Errno::ENOENT {} end configs.reduce(default) { |dst, src| dst.deeper_merge!(src, overwrite_arrays: true) } end |