Module: Dolly::Configuration

Included in:
Connection
Defined in:
lib/dolly/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#config_fileObject



39
40
41
# File 'lib/dolly/configuration.rb', line 39

def config_file
  @config_file ||= File.join('config', 'couchdb.yml')
end

Instance Method Details

#base_uriObject



12
13
14
# File 'lib/dolly/configuration.rb', line 12

def base_uri
  "#{protocol}#{host}#{port}"
end

#configurationObject



33
34
35
36
37
# File 'lib/dolly/configuration.rb', line 33

def configuration
  @config_data ||= File.read(config_file)
  raise Dolly::InvalidConfigFileError if @config_data&.empty?
  YAML::safe_load(ERB.new(@config_data).result, aliases: true)[app_env.to_s]
end

#db_nameObject



29
30
31
# File 'lib/dolly/configuration.rb', line 29

def db_name
  env['name']
end

#envObject



8
9
10
# File 'lib/dolly/configuration.rb', line 8

def env
  @env ||= configuration[db.to_s]
end

#hostObject



20
21
22
# File 'lib/dolly/configuration.rb', line 20

def host
  env['host']
end

#portObject



24
25
26
27
# File 'lib/dolly/configuration.rb', line 24

def port
  return unless env['port']
  ":#{env['port']}"
end

#protocolObject



16
17
18
# File 'lib/dolly/configuration.rb', line 16

def protocol
  "#{env['protocol']}://"
end