Sha256: db8799bfa66c7d9fd17fda4e42df928d9d1e08e4bc547aef0e7438ef222da8cf

Contents?: true

Size: 705 Bytes

Versions: 5

Compression:

Stored size: 705 Bytes

Contents

require 'mustache'

module TerraformDevKit
  class TemplateConfigFile
    def initialize(content, project, env, aws_config, extra_vars: {})
      @content = content
      @project = project
      @env = env
      @aws_config = aws_config
      @extra_vars = extra_vars
    end

    def render
      args = {
        Profile: @aws_config.fetch('profile', ''),
        Region:  @aws_config.fetch('region'),
        Environment: @env.name,
        LocalBackend: @env.local_backend?,
        ProjectName: @project.name,
        ProjectAcronym: @project.acronym
      }
      args.merge!(@extra_vars)
      Mustache.render(
        @content,
        args
      )
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
TerraformDevKit-0.4.0 lib/TerraformDevKit/template_config_file.rb
TerraformDevKit-0.3.8 lib/TerraformDevKit/template_config_file.rb
TerraformDevKit-0.3.7 lib/TerraformDevKit/template_config_file.rb
TerraformDevKit-0.3.6 lib/TerraformDevKit/template_config_file.rb
TerraformDevKit-0.3.5 lib/TerraformDevKit/template_config_file.rb