Class: Dory::Config
- Inherits:
-
Object
- Object
- Dory::Config
- Defined in:
- lib/dory/config.rb
Class Method Summary collapse
- .debug? ⇒ Boolean
- .default_settings ⇒ Object
- .default_yaml ⇒ Object
- .filename ⇒ Object
- .settings(filename = self.filename) ⇒ Object
- .write_default_settings_file(filename = self.filename) ⇒ Object
- .write_settings(settings, filename = self.filename, is_yaml: false) ⇒ Object
Class Method Details
.debug? ⇒ Boolean
63 64 65 |
# File 'lib/dory/config.rb', line 63 def self.debug? self.settings[:dory][:debug] end |
.default_settings ⇒ Object
36 37 38 |
# File 'lib/dory/config.rb', line 36 def self.default_settings YAML.load(self.default_yaml) end |
.default_yaml ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/dory/config.rb', line 9 def self.default_yaml %q(--- :dory: # Be careful if you change the settings of some of # these services. They may not talk to each other # if you change IP Addresses. # For example, resolv expects a nameserver listening at # the specified address. dnsmasq normally does this, # but if you disable dnsmasq, it # will make your system look for a name server that # doesn't exist. :dnsmasq: :enabled: true :domain: docker # domain that will be listened for :address: 127.0.0.1 # address returned for queries against domain :container_name: dory_dnsmasq :nginx_proxy: :enabled: true :container_name: dory_dinghy_http_proxy :https_enabled: true :ssl_certs_dir: '' # leave as empty string to use default certs :resolv: :enabled: true :nameserver: 127.0.0.1 ).split("\n").map{|s| s.sub(' ' * 8, '')}.join("\n") end |
.filename ⇒ Object
5 6 7 |
# File 'lib/dory/config.rb', line 5 def self.filename "#{Dir.home}/.dory.yml" end |
.settings(filename = self.filename) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/dory/config.rb', line 40 def self.settings(filename = self.filename) if File.exist?(filename) default_settings = self.default_settings.dup config_file_settings = YAML.load_file(filename) [:dnsmasq, :nginx_proxy, :resolv].each do |service| default_settings[:dory][service].merge!(config_file_settings[:dory][service] || {}) end default_settings[:dory][:debug] = config_file_settings[:dory][:debug] default_settings else self.default_settings end end |
.write_default_settings_file(filename = self.filename) ⇒ Object
59 60 61 |
# File 'lib/dory/config.rb', line 59 def self.write_default_settings_file(filename = self.filename) self.write_settings(self.default_yaml, filename, is_yaml: true) end |
.write_settings(settings, filename = self.filename, is_yaml: false) ⇒ Object
54 55 56 57 |
# File 'lib/dory/config.rb', line 54 def self.write_settings(settings, filename = self.filename, is_yaml: false) settings = settings.to_yaml unless is_yaml File.write(filename, settings) end |