[ aws . cloudformation ]

get-template

Description

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.

Synopsis

  get-template
[--stack-name <value>]
[--change-set-name <value>]
[--template-stage <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--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, specify Processed .

If the template doesn’t include transforms, Original and Processed return the same template. By default, CloudFormation specifies Processed .

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.

Examples

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"
                }
            }
        }
    }
}

Output

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 and Processed templates are always available. For change sets, the Original template is always available. After CloudFormation finishes creating the change set, the Processed template becomes available.

(string)