Skip to content

aws.cloudformation.describe_change_set

Example SQL Queries

SELECT * FROM
aws.cloudformation.describe_change_set
WHERE
"change_set_name" = 'VALUE';

Description

Returns the inputs for the change set and a list of changes that CloudFormation will make if you execute the change set. For more information, see Updating Stacks Using Change Sets in the CloudFormation User Guide.

Table Definition

Column NameColumn Data Type
change_set_name Required Input Column

The name of the change set.

VARCHAR
include_property_values Input Column

If true, the returned changes include detailed changes in the property values.

BOOLEAN
stack_name Input Column

The name of the stack that's associated with the change set.

VARCHAR
_aws_profile Input Column

The AWS profile defines the AWS identity used. It can be defined via credentials or by assuming a IAM role.

STRUCT(
"type" VARCHAR,
"name" VARCHAR,
"account_id" VARCHAR,
"via_profile_name" VARCHAR,
"assumed_role_arn" VARCHAR,
"organization" STRUCT(
"account_name" VARCHAR,
"id" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[],
"master_account" STRUCT(
"id" VARCHAR,
"email" VARCHAR
),
"parents" STRUCT(
"type" VARCHAR,
"id" VARCHAR,
"name" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[]
)[]
)
)
Show child fields
_aws_profile.account_id

The AWS account id

_aws_profile.assumed_role_arn

The ARN of the assumed role

_aws_profile.name

The unique name of the profile.

_aws_profile.organization

Information about this profile's membership in the AWS organization.

Show child fields
_aws_profile.organization.account_name

The name of account speciifed by the organization

_aws_profile.organization.id

The organization id

_aws_profile.organization.master_account
Show child fields
_aws_profile.organization.master_account.email

The organization master account email address

_aws_profile.organization.master_account.id

The organization master account id

_aws_profile.organization.parents[]
Show child fields
_aws_profile.organization.parents[].id

The id of the parent

_aws_profile.organization.parents[].name

The name of the parent

_aws_profile.organization.parents[].tags[]
Show child fields
_aws_profile.organization.parents[].tags[].key
_aws_profile.organization.parents[].tags[].value
_aws_profile.organization.parents[].type

The type of parent can be an organization unit or a root

_aws_profile.organization.tags[]
Show child fields
_aws_profile.organization.tags[].key
_aws_profile.organization.tags[].value
_aws_profile.type

The type of profile, either 'credentials' or 'assumed_role'

_aws_profile.via_profile_name

This IAM role for this profile is assumed by first utilizing another profile with this name to obtain credentials.

_aws_region Input Column

The AWS region to use.

VARCHAR
capabilities

If you execute the change set, the list of capabilities that were explicitly acknowledged when the change set was created.

VARCHAR[]
Show child fields
capabilities[]
change_set_id

The Amazon Resource Name (ARN) of the change set.

VARCHAR
changes

A list of Change structures that describes the resources CloudFormation changes if you execute the change set.

STRUCT(
"type" VARCHAR,
"hook_invocation_count" BIGINT,
"resource_change" STRUCT(
"policy_action" VARCHAR,
"action" VARCHAR,
"logical_resource_id" VARCHAR,
"physical_resource_id" VARCHAR,
"resource_type" VARCHAR,
"replacement" VARCHAR,
"scope" VARCHAR[],
"details" STRUCT(
"target" STRUCT(
"attribute" VARCHAR,
"name" VARCHAR,
"requires_recreation" VARCHAR,
"path" VARCHAR,
"before_value" VARCHAR,
"after_value" VARCHAR,
"attribute_change_type" VARCHAR
),
"evaluation" VARCHAR,
"change_source" VARCHAR,
"causing_entity" VARCHAR
)[],
"change_set_id" VARCHAR,
"module_info" STRUCT(
"type_hierarchy" VARCHAR,
"logical_id_hierarchy" VARCHAR
),
"before_context" VARCHAR,
"after_context" VARCHAR
)
)[]
Show child fields
changes[]
Show child fields
changes[].hook_invocation_count

Is either null, if no hooks invoke for the resource, or contains the number of hooks that will invoke for the resource.

changes[].resource_change

A ResourceChange structure that describes the resource and action that CloudFormation will perform.

Show child fields
changes[].resource_change.action

The action that CloudFormation takes on the resource, such as Add (adds a new resource), Modify (changes a resource), Remove (deletes a resource), Import (imports a resource), or Dynamic (exact action for the resource can't be determined).

changes[].resource_change.after_context

An encoded JSON string containing the context of the resource after the change is executed.

changes[].resource_change.before_context

An encoded JSON string containing the context of the resource before the change is executed.

changes[].resource_change.change_set_id

The change set ID of the nested change set.

changes[].resource_change.details[]
Show child fields
changes[].resource_change.details[].causing_entity

The identity of the entity that triggered this change. This entity is a member of the group that's specified by the ChangeSource field. For example, if you modified the value of the KeyPairName parameter, the CausingEntity is the name of the parameter (KeyPairName).

If the ChangeSource value is DirectModification, no value is given for CausingEntity.

changes[].resource_change.details[].change_source

The group to which the CausingEntity value belongs. There are five entity groups:

  • ResourceReference entities are Ref intrinsic functions that refer to resources in the template, such as { "Ref" : "MyEC2InstanceResource" }.

  • ParameterReference entities are Ref intrinsic functions that get template parameter values, such as { "Ref" : "MyPasswordParameter" }.

  • ResourceAttribute entities are Fn::GetAtt intrinsic functions that get resource attribute values, such as { "Fn::GetAtt" : [ "MyEC2InstanceResource", "PublicDnsName" ] }.

  • DirectModification entities are changes that are made directly to the template.

  • Automatic entities are AWS::CloudFormation::Stack resource types, which are also known as nested stacks. If you made no changes to the AWS::CloudFormation::Stack resource, CloudFormation sets the ChangeSource to Automatic because the nested stack's template might have changed. Changes to a nested stack's template aren't visible to CloudFormation until you run an update on the parent stack.

changes[].resource_change.details[].evaluation

Indicates whether CloudFormation can determine the target value, and whether the target value will change before you execute a change set.

For Static evaluations, CloudFormation can determine that the target value will change, and its value. For example, if you directly modify the InstanceType property of an EC2 instance, CloudFormation knows that this property value will change, and its value, so this is a Static evaluation.

For Dynamic evaluations, can't determine the target value because it depends on the result of an intrinsic function, such as a Ref or Fn::GetAtt intrinsic function, when the stack is updated. For example, if your template includes a reference to a resource that's conditionally recreated, the value of the reference (the physical ID of the resource) might change, depending on if the resource is recreated. If the resource is recreated, it will have a new physical ID, so all references to that resource will also be updated.

changes[].resource_change.details[].target

A ResourceTargetDefinition structure that describes the field that CloudFormation will change and whether the resource will be recreated.

Show child fields
changes[].resource_change.details[].target.after_value

The value of the property after the change is executed. Large values can be truncated.

changes[].resource_change.details[].target.attribute

Indicates which resource attribute is triggering this update, such as a change in the resource attribute's Metadata, Properties, or Tags.

changes[].resource_change.details[].target.attribute_change_type

The type of change to be made to the property if the change is executed.

  • Add The item will be added.

  • Remove The item will be removed.

  • Modify The item will be modified.

changes[].resource_change.details[].target.before_value

The value of the property before the change is executed. Large values can be truncated.

changes[].resource_change.details[].target.name

If the Attribute value is Properties, the name of the property. For all other attributes, the value is null.

changes[].resource_change.details[].target.path

The property path of the property.

changes[].resource_change.details[].target.requires_recreation

If the Attribute value is Properties, indicates whether a change to this property causes the resource to be recreated. The value can be Never, Always, or Conditionally. To determine the conditions for a Conditionally recreation, see the update behavior for that property in the CloudFormation User Guide.

changes[].resource_change.logical_resource_id

The resource's logical ID, which is defined in the stack's template.

changes[].resource_change.module_info

Contains information about the module from which the resource was created, if the resource was created from a module included in the stack template.

Show child fields
changes[].resource_change.module_info.logical_id_hierarchy

A concatenated list of the logical IDs of the module or modules containing the resource. Modules are listed starting with the inner-most nested module, and separated by /.

In the following example, the resource was created from a module, moduleA, that's nested inside a parent module, moduleB.

moduleA/moduleB

For more information, see Referencing resources in a module in the CloudFormation User Guide.

changes[].resource_change.module_info.type_hierarchy

A concatenated list of the module type or types containing the resource. Module types are listed starting with the inner-most nested module, and separated by /.

In the following example, the resource was created from a module of type AWS::First::Example::MODULE, that's nested inside a parent module of type AWS::Second::Example::MODULE.

AWS::First::Example::MODULE/AWS::Second::Example::MODULE

changes[].resource_change.physical_resource_id

The resource's physical ID (resource name). Resources that you are adding don't have physical IDs because they haven't been created.

changes[].resource_change.policy_action

The action that will be taken on the physical resource when the change set is executed.

  • Delete The resource will be deleted.

  • Retain The resource will be retained.

  • Snapshot The resource will have a snapshot taken.

  • ReplaceAndDelete The resource will be replaced and then deleted.

  • ReplaceAndRetain The resource will be replaced and then retained.

  • ReplaceAndSnapshot The resource will be replaced and then have a snapshot taken.

changes[].resource_change.replacement

For the Modify action, indicates whether CloudFormation will replace the resource by creating a new one and deleting the old one. This value depends on the value of the RequiresRecreation property in the ResourceTargetDefinition structure. For example, if the RequiresRecreation field is Always and the Evaluation field is Static, Replacement is True. If the RequiresRecreation field is Always and the Evaluation field is Dynamic, Replacement is Conditionally.

If you have multiple changes with different RequiresRecreation values, the Replacement value depends on the change with the most impact. A RequiresRecreation value of Always has the most impact, followed by Conditionally, and then Never.

changes[].resource_change.resource_type

The type of CloudFormation resource, such as AWS::S3::Bucket.

changes[].resource_change.scope[]
changes[].type

The type of entity that CloudFormation changes.

  • Resource This change is for a resource.

creation_time

The start time when the change set was created, in UTC.

TIMESTAMP_S
description

Information about the change set.

VARCHAR
execution_status

If the change set execution status is AVAILABLE, you can execute the change set. If you can't execute the change set, the status indicates why. For example, a change set might be in an UNAVAILABLE state because CloudFormation is still creating it or in an OBSOLETE state because the stack was already updated.

VARCHAR
import_existing_resources

Indicates if the change set imports resources that already exist.

This parameter can only import resources that have custom names in templates. To import resources that do not accept custom names, such as EC2 instances, use the resource import feature instead.

BOOLEAN
include_nested_stacks

Verifies if IncludeNestedStacks is set to True.

BOOLEAN
notification_ar_ns

The ARNs of the Amazon Simple Notification Service (Amazon SNS) topics that will be associated with the stack if you execute the change set.

VARCHAR[]
Show child fields
notification_ar_ns[]
on_stack_failure

Determines what action will be taken if stack creation fails. When this parameter is specified, the DisableRollback parameter to the ExecuteChangeSet API operation must not be specified. This must be one of these values:

  • DELETE - Deletes the change set if the stack creation fails. This is only valid when the ChangeSetType parameter is set to CREATE. If the deletion of the stack fails, the status of the stack is DELETE_FAILED.

  • DO_NOTHING - if the stack creation fails, do nothing. This is equivalent to specifying true for the DisableRollback parameter to the ExecuteChangeSet API operation.

  • ROLLBACK - if the stack creation fails, roll back the stack. This is equivalent to specifying false for the DisableRollback parameter to the ExecuteChangeSet API operation.

VARCHAR
parameters

A list of Parameter structures that describes the input parameters and their values used to create the change set. For more information, see the Parameter data type.

STRUCT(
"parameter_key" VARCHAR,
"parameter_value" VARCHAR,
"use_previous_value" BOOLEAN,
"resolved_value" VARCHAR
)[]
Show child fields
parameters[]
Show child fields
parameters[].parameter_key

The key associated with the parameter. If you don't specify a key and value for a particular parameter, CloudFormation uses the default value that's specified in your template.

parameters[].parameter_value

The input value associated with the parameter.

parameters[].resolved_value

Read-only. The value that corresponds to a SSM parameter key. This field is returned only for SSM parameter types in the template.

parameters[].use_previous_value

During a stack update, use the existing parameter value that the stack is using for a given parameter key. If you specify true, do not specify a parameter value.

parent_change_set_id

Specifies the change set ID of the parent change set in the current nested change set hierarchy.

VARCHAR
rollback_configuration

The rollback triggers for CloudFormation to monitor during stack creation and updating operations, and for the specified monitoring period afterwards.

STRUCT(
"rollback_triggers" STRUCT(
"arn" VARCHAR,
"type" VARCHAR
)[],
"monitoring_time_in_minutes" BIGINT
)
Show child fields
rollback_configuration.monitoring_time_in_minutes

The amount of time, in minutes, during which CloudFormation should monitor all the rollback triggers after the stack creation or update operation deploys all necessary resources.

The default is 0 minutes.

If you specify a monitoring period but don't specify any rollback triggers, CloudFormation still waits the specified period of time before cleaning up old resources after update operations. You can use this monitoring period to perform any manual stack validation desired, and manually cancel the stack creation or update (using CancelUpdateStack, for example) as necessary.

If you specify 0 for this parameter, CloudFormation still monitors the specified rollback triggers during stack creation and update operations. Then, for update operations, it begins disposing of old resources immediately once the operation completes.

rollback_configuration.rollback_triggers[]
Show child fields
rollback_configuration.rollback_triggers[].arn

The Amazon Resource Name (ARN) of the rollback trigger.

If a specified trigger is missing, the entire stack operation fails and is rolled back.

rollback_configuration.rollback_triggers[].type

The resource type of the rollback trigger. Specify either AWS::CloudWatch::Alarm or AWS::CloudWatch::CompositeAlarm resource types.

root_change_set_id

Specifies the change set ID of the root change set in the current nested change set hierarchy.

VARCHAR
stack_id

The Amazon Resource Name (ARN) of the stack that's associated with the change set.

VARCHAR
status

The current status of the change set, such as CREATE_IN_PROGRESS, CREATE_COMPLETE, or FAILED.

VARCHAR
status_reason

A description of the change set's status. For example, if your attempt to create a change set failed, CloudFormation shows the error message.

VARCHAR
tags

If you execute the change set, the tags that will be associated with the stack.

STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[]
Show child fields
tags[]
Show child fields
tags[].key

Required. A string used to identify this tag. You can specify a maximum of 128 characters for a tag key. Tags owned by Amazon Web Services (Amazon Web Services) have the reserved prefix: aws:.

tags[].value

Required. A string containing the value for this tag. You can specify a maximum of 256 characters for a tag value.