Difference between revisions of "Cloudformation"
Jump to navigation
Jump to search
(→Syntax) |
|||
Line 127: | Line 127: | ||
!And [condition] #short form | !And [condition] #short form | ||
</source> | </source> | ||
= References = | |||
* [https://aws.amazon.com/cloudformation/aws-cloudformation-templates/ aws-cloudformation-templates] Aws Official, go to Sample Templates |
Revision as of 07:51, 20 July 2018
Basic structure of Json and Yaml templates
YAML | JSON |
---|---|
AWSTemplateFormatVersion: 2010-09-09 Description: Yaml string, version 1.0 Metadata: {} Parameters: {} Mappings: {} Conditions: {} Transform: {} Resources: {} Outputs: {} |
{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "JSON string, version 1.0", "Metadata": {}, "Parameters": {}, "Mappings": {}, "Conditions": {}, "Transform": {}, "Resources": {}, "Outputs": {} } |
Structured template
YAML | JSON |
---|---|
AWSTemplateFormatVersion: 2010-09-09 Description: JSON string Metadata: {} Parameters: InstanceTypeParameter: Type: String Default: t2.micro AllowedValues: - t2.micro - m1.smal Description: 'Enter t2.micro, m1.large' Mappings: {} # Mapping01: # Key01: # Name: Value01 # Key02: # Name: Value02 Conditions: {} Transform: {} # AWS::serverless # AWS::Include (reusing template snippets) Resources: MyBucket: #logicalID must be unique, can be reused within the template Type: 'AWS:S3::Bucket' #type of resource to create Properties: #additional options for a resource 'Fn::Transform;: - Name: 'AWS::Include' Parameters: Location: s3://bucket/MyBucketName.yaml Outputs: {} # logicalID: # Descryption: # Value: # Export: # Name: Value to export |
{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "JSON string", "Metadata": {}, "Parameters": { "InstanceTypeParameter": { "Type": "String", "Default": "t2.micro", "AllowedValues": [ "t2.micro", "m1.small" ], "Description": "Enter t2.micro, m1.small" } }, "Mappings": {}, "Conditions": {}, "Transform": {}, "Resources": {}, "Outputs": {} } |
Intrinsic Functions (buildin)
Use intrinsic functions in your templates to assign values to properties that are not available until runtime.
Fn::Base64 Fn::Cidr Condition Functions Fn::FindInMap Fn::GetAtt Fn::GetAZs Fn::ImportValue Fn::Join Fn::Select Fn::Split Fn::Sub Ref
Syntax
Within AWS designer following are available:
ctrl
+space
- opens auto-completion and help context in a resource properties- pink dot - indicates a resource depends on other resource
Function short form
The exclamation point indicates the YAML short form of a command. It does not indicate a Boolean not.
"Fn::And": [{condition}, {...}] #Json Fn::And: [Condition] #yaml full syntax !And [condition] #short form
References
- aws-cloudformation-templates Aws Official, go to Sample Templates