[ aws . cloudformation ]
Returns the template body for a specified stack. You can get the template for running or deleted stacks.
For deleted stacks, GetTemplate
returns the template for up to 90 days after the stack has been deleted.
Note
If the template doesn’t exist, a ValidationError
is returned.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
get-template
[--stack-name <value>]
[--change-set-name <value>]
[--template-stage <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--stack-name
(string)
The name or the unique stack ID that’s associated with the stack, which aren’t always interchangeable:
Running stacks: You can specify either the stack’s name or its unique stack ID.
Deleted stacks: You must specify the unique stack ID.
Default: There is no default value.
--change-set-name
(string)
The name or Amazon Resource Name (ARN) of a change set for which CloudFormation returns the associated template. If you specify a name, you must also specify the
StackName
.
--template-stage
(string)
For templates that include transforms, the stage of the template that CloudFormation returns. To get the user-submitted template, specify
Original
. To get the template after CloudFormation has processed all transforms, specifyProcessed
.If the template doesn’t include transforms,
Original
andProcessed
return the same template. By default, CloudFormation specifiesProcessed
.Possible values:
Original
Processed
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.
See ‘aws help’ for descriptions of global parameters.
Note
To use the following examples, you must have the AWS CLI installed and configured. See the Getting started guide in the AWS CLI User Guide for more information.
Unless otherwise stated, all examples have unix-like quotation rules. These examples will need to be adapted to your terminal’s quoting rules. See Using quotation marks with strings in the AWS CLI User Guide .
To view the template body for an AWS CloudFormation stack
The following get-template
command shows the template for the myteststack
stack:
aws cloudformation get-template --stack-name myteststack
Output:
{
"TemplateBody": {
"AWSTemplateFormatVersion": "2010-09-09",
"Outputs": {
"BucketName": {
"Description": "Name of S3 bucket to hold website content",
"Value": {
"Ref": "S3Bucket"
}
}
},
"Description": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.",
"Resources": {
"S3Bucket": {
"Type": "AWS::S3::Bucket",
"Properties": {
"AccessControl": "PublicRead"
}
}
}
}
}
TemplateBody -> (string)
Structure containing the template body. (For more information, go to Template Anatomy in the CloudFormation User Guide.)
CloudFormation returns the same template that was used when the stack was created.
StagesAvailable -> (list)
The stage of the template that you can retrieve. For stacks, the
Original
andProcessed
templates are always available. For change sets, theOriginal
template is always available. After CloudFormation finishes creating the change set, theProcessed
template becomes available.(string)