diff --git a/lib/covalence/core/entities/input.rb b/lib/covalence/core/entities/input.rb index b51adf3..4411a57 100644 --- a/lib/covalence/core/entities/input.rb +++ b/lib/covalence/core/entities/input.rb @@ -28,6 +28,10 @@ def to_command_option "#{name} = #{parse_input(value())}" end + def to_command_hash_elements + return name, parse_input(value()).delete_prefix('"').delete_suffix('"') + end + private def get_value(input) diff --git a/lib/covalence/core/entities/stack.rb b/lib/covalence/core/entities/stack.rb index 031c2be..b679df8 100644 --- a/lib/covalence/core/entities/stack.rb +++ b/lib/covalence/core/entities/stack.rb @@ -51,8 +51,8 @@ def materialize_cmd_inputs(path) File.open("#{path}/covalence-inputs.tfvars",'w') {|f| f.write(config)} elsif type == "packer" config = Hash.new - inputs.each do |name, input| - config[name] = input.value + inputs.values.map(&:to_command_hash_elements).each do |name, input| + config["#{name}"] = input end config_json = JSON.generate(config) logger.info "path: #{path} module_path: #{module_path}\nStack inputs:\n\n#{config_json}"