Module: Cumuliform

Defined in:
lib/cumuliform/dsl.rb,
lib/cumuliform/error.rb,
lib/cumuliform/output.rb,
lib/cumuliform/runner.rb,
lib/cumuliform/section.rb,
lib/cumuliform/version.rb,
lib/cumuliform/sections.rb,
lib/cumuliform/template.rb,
lib/cumuliform/rake_task.rb,
lib/cumuliform/dsl/import.rb,
lib/cumuliform/dsl/helpers.rb,
lib/cumuliform/dsl/fragments.rb,
lib/cumuliform/dsl/functions.rb

Overview

Cumuliform is a simple tool for generating AWS CloudFormation templates. It’s concerned with making it easier and less error-prone to write templates by providing features that verify references at template generation time, rather than waiting for failures in stack creation. It also allows you to define and reuse template fragments within one template, and between many templates.

Defined Under Namespace

Modules: DSL, Error, Output, RakeTask, Sections Classes: Runner, Section, Template

Constant Summary collapse

VERSION =
"0.6.1"
SECTIONS =
{
  "Parameters" => :parameter,
  "Mappings" => :mapping,
  "Conditions" => :condition,
  "Resources" => :resource,
  "Outputs" => :output
}
SECTION_NAMES =
SECTIONS.map { |name, _| name }
AWS_PSEUDO_PARAMS =
%w{
  AWS::AccountId AWS::NotificationARNs AWS::NoValue AWS::Partition
  AWS::Region AWS::StackId AWS::StackName AWS::URLSuffix
}
TOP_LEVEL =
%w{ Transform Description }

Class Method Summary collapse

Class Method Details

.template(&block) ⇒ Template

Create a new template from the passed-in block

Parameters:

  • block

    the template body

Returns:



17
18
19
20
# File 'lib/cumuliform/dsl.rb', line 17

def self.template(&block)
  template = Template.new
  template.define(&block)
end