Module: Config::Factory::Environments

Defined in:
lib/config/factory/environments.rb

Constant Summary collapse

DEFAULT_ENVIRONMENT =
:production
STANDARD_ENVIRONMENTS =
[:defaults, :development, :test, :stage, :staging, :production].freeze
STANDARD_ENVIRONMENTS_NOT_FOUND =
"No standard environment tags (#{STANDARD_ENVIRONMENTS.join(', ')}) found; is this really a multiple-environment configuration?"

Class Method Summary collapse

Class Method Details

.load_file(path) ⇒ Object



11
12
13
14
# File 'lib/config/factory/environments.rb', line 11

def self.load_file(path)
  hash = YAML.load_file(path)
  load_hash(hash)
end

.load_hash(hash) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/config/factory/environments.rb', line 16

def self.load_hash(hash)
  warn STANDARD_ENVIRONMENTS_NOT_FOUND unless STANDARD_ENVIRONMENTS.any? { |k| hash.key?(k.to_s) }
  hash.map do |k, v|
    k2 = k.to_sym
    [k2, Environment.new(name: k2, configs: v)]
  end.to_h
end