Class: AppConfig

Inherits:
Object
  • Object
show all
Defined in:
lib/app_config.rb

Direct Known Subclasses

Secrets

Defined Under Namespace

Classes: ParsingError

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(filename = "") ⇒ AppConfig

Returns a new instance of AppConfig.


30
31
32
# File 'lib/app_config.rb', line 30

def initialize(filename = "")
	@filename = filename.empty? ? AppConfig.default_filename : filename
end

Class Method Details

.config_path_for(env) ⇒ Object


15
16
17
# File 'lib/app_config.rb', line 15

def config_path_for(env)
	"config/#{env}/config.json"
end

.default_filenameObject


11
12
13
# File 'lib/app_config.rb', line 11

def default_filename
	config_path_for(Environment.environment)
end

.loadObject


7
8
9
# File 'lib/app_config.rb', line 7

def load
	new(app_config_path).load
end

Instance Method Details

#loadObject


34
35
36
37
38
# File 'lib/app_config.rb', line 34

def load
	config['environment']&.each do |key, value|
		ENV[key] = value.is_a?(Hash) || value.is_a?(Array) ? value.to_json : value.to_s
	end
end