Class: Envconfig::Database::Generic

Inherits:
Object
  • Object
show all
Includes:
Provider
Defined in:
lib/envconfig/database.rb

Instance Method Summary collapse

Methods included from Provider

#config, #env_keys, find, #initialize, #name, #static, #valid?

Instance Method Details

#filter_config(config) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/envconfig/database.rb', line 17

def filter_config(config)
  url = UrlParser.new(config[:url])
  parts = url.extract_as(
    adapter: ->(u){ (u.scheme || "").sub(/\Apostgres\z/, "postgresql") },
    database: ->(u){ (u.path || "").split("/")[1] },
    username: :user,
    password: :password,
    host: :host,
    port: :port,
  )
  config.merge!(parts).merge!(url.query_values)
end

#mappingObject



14
15
16
# File 'lib/envconfig/database.rb', line 14

def mapping
  {url: "DATABASE_URL"}
end