Class: StackMaster::TemplateCompilers::Cfndsl
- Inherits:
-
Object
- Object
- StackMaster::TemplateCompilers::Cfndsl
- Defined in:
- lib/stack_master/template_compilers/cfndsl.rb
Class Method Summary collapse
- .compile(template_dir, template, compile_time_parameters, _compiler_options = {}) ⇒ Object
- .require_dependencies ⇒ Object
Class Method Details
.compile(template_dir, template, compile_time_parameters, _compiler_options = {}) ⇒ Object
8 9 10 11 12 13 14 |
# File 'lib/stack_master/template_compilers/cfndsl.rb', line 8 def self.compile(template_dir, template, compile_time_parameters, = {}) CfnDsl::ExternalParameters.defaults.clear # Ensure there's no leakage across invocations CfnDsl::ExternalParameters.defaults(compile_time_parameters.symbolize_keys) template_file_path = File.join(template_dir, template) json_hash = ::CfnDsl.eval_file_with_extras(template_file_path).as_json JSON.pretty_generate(json_hash) end |
.require_dependencies ⇒ Object
3 4 5 6 |
# File 'lib/stack_master/template_compilers/cfndsl.rb', line 3 def self.require_dependencies require 'cfndsl' require 'json' end |