Module: StackMaster::ParameterLoader

Defined in:
lib/stack_master/parameter_loader.rb

Constant Summary collapse

COMPILE_TIME_PARAMETERS_KEY =
'compile_time_parameters'

Class Method Summary collapse

Class Method Details

.load(parameter_files: [], parameters: {}) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/stack_master/parameter_loader.rb', line 8

def load(parameter_files: [], parameters: {})
  StackMaster.debug 'Searching for parameter files...'
  all_parameters = parameter_files.map { |file_name| load_parameters(file_name) } + [parameters]
  all_parameters.each_with_object({ template_parameters: {}, compile_time_parameters: {} }) do |parameters, hash|
    template_parameters = create_template_parameters(parameters)
    compile_time_parameters = create_compile_time_parameters(parameters)

    merge_and_camelize(hash[:template_parameters], template_parameters)
    merge_and_camelize(hash[:compile_time_parameters], compile_time_parameters)
  end
end