AWSTemplateFormatVersion

2010-09-09

Description

cfn_part.yml

CloudFormation features demonstration template (Main).

Transform

#
Value
0
AWS::LanguageExtensions

Rules

Production Environment Check

Property
Value
RuleConditionWhen to Validate
!Equals [
!Ref EnvType
,prod]
AssertionsValidation Checks
# 0
Property
Value
AssertAssertion Logic
!Contains [ [prod,stg] ,
!Ref EnvType
]
AssertDescriptionError Message
Environment must be prod or stg

Resources

Intrinsic Functions Demo Custom::Functions

Property
Value
Base64ValBase64 Encoded Value
!Base64 Hello World

EC2 Instance (Function Examples) AWS::EC2::Instance

Attributes

Attribute
Value
CreationPolicyCreation Policy
Property
Value
ResourceSignalSignal Configuration
Property
Value
TimeoutTimeout Duration
PT5M

Properties

Property
Value
ImageIdAMI ID
ami-12345
InstanceTypeInstance Type
t2.micro
JoinValJoin Example
!Join [-, [a,b,c] ]
SplitValSplit Example
!Split [-,a-b-c]
SelectValSelect Example
!Select [1,
!Ref SplitVal
]
CidrValCIDR Example
!Cidr [10.0.0.0/16,2,8]
AzsValAvailability Zones
!GetAZs us-east-1
MapValFindInMap Example
!FindInMap [RegionMap,
!Ref AWS::Region
,AMI]
ImportValImportValue Example
!ImportValue SomeExportedValue
JsonValToJsonString Example
!ToJsonString {Key: Value}
LengthValLength Example
!Length [
!Ref SplitVal
]

ForEach Loop Macro

# 0: Iterator Variable
Identifier
# 1: Collection
Value
A
B
# 2: Resource Template
Property
Value
Resource${Identifier}Dynamic SNS Topic
Property
Value
TypeResource Type
AWS::SNS::Topic
PropertiesTopic Properties
Property
Value
TopicNameTopic Name
!Sub Topic-${Identifier}