Sha256: 9dd6721a16662f93121e56d5d6ccf8dc53f3d87de7a32563cd6e75865fa13ed7
Contents?: true
Size: 741 Bytes
Versions: 1
Compression:
Stored size: 741 Bytes
Contents
require 'singleton' require 'yaml' require 'forwardable' require 'json' module Dru class Config extend Forwardable include Singleton def_delegators :configs, :docker_projects_folder, :alias DEFAULT = { 'docker_projects_folder' => "~/.dru", 'alias' => {} }.freeze attr_reader :config_file_path def config_file_path=(config_file_path) @configs = nil @config_file_path = config_file_path end private def configs @configs ||= JSON.parse(DEFAULT.merge(user_configs).to_json, object_class: OpenStruct) end def user_configs return {} unless config_file_path && File.file?(config_file_path) YAML.load_file(config_file_path) || {} end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dru-1.0.0 | lib/dru/config.rb |