ExecuteChangeSetCommand

Updates a stack using the input information that was provided when the specified change set was created. After the call successfully completes, CloudFormation starts updating the stack. Use the DescribeStacks action to view the status of the update.

When you execute a change set, CloudFormation deletes all other change sets associated with the stack because they aren't valid for the updated stack.

If a stack policy is associated with the stack, CloudFormation enforces the policy during the update. You can't specify a temporary stack policy that overrides the current policy.

To create a change set for the entire stack hierarchy, IncludeNestedStacks must have been set to True.

Example Syntax

Use a bare-bones client and the command you need to make an API call.

import { CloudFormationClient, ExecuteChangeSetCommand } from "@aws-sdk/client-cloudformation"; // ES Modules import
// const { CloudFormationClient, ExecuteChangeSetCommand } = require("@aws-sdk/client-cloudformation"); // CommonJS import
const client = new CloudFormationClient(config);
const input = { // ExecuteChangeSetInput
  ChangeSetName: "STRING_VALUE", // required
  StackName: "STRING_VALUE",
  ClientRequestToken: "STRING_VALUE",
  DisableRollback: true || false,
  RetainExceptOnCreate: true || false,
};
const command = new ExecuteChangeSetCommand(input);
const response = await client.send(command);
// {};

ExecuteChangeSetCommand Input

See ExecuteChangeSetCommandInput for more details

Parameter
Type
Description
ChangeSetName
Required
string | undefined

The name or Amazon Resource Name (ARN) of the change set that you want use to update the specified stack.

ClientRequestToken
string | undefined

A unique identifier for this ExecuteChangeSet request. Specify this token if you plan to retry requests so that CloudFormation knows that you're not attempting to execute a change set to update a stack with the same name. You might retry ExecuteChangeSet requests to ensure that CloudFormation successfully received them.

DisableRollback
boolean | undefined

Preserves the state of previously provisioned resources when an operation fails. This parameter can't be specified when the OnStackFailure parameter to the CreateChangeSet  API operation was specified.

  • True - if the stack creation fails, do nothing. This is equivalent to specifying DO_NOTHING for the OnStackFailure parameter to the CreateChangeSet  API operation.

  • False - if the stack creation fails, roll back the stack. This is equivalent to specifying ROLLBACK for the OnStackFailure parameter to the CreateChangeSet  API operation.

Default: True

RetainExceptOnCreate
boolean | undefined

When set to true, newly created resources are deleted when the operation rolls back. This includes newly created resources marked with a deletion policy of Retain.

Default: false

StackName
string | undefined

If you specified the name of a change set, specify the stack name or Amazon Resource Name (ARN) that's associated with the change set you want to execute.

ExecuteChangeSetCommand Output

Parameter
Type
Description
$metadata
Required
ResponseMetadata
Metadata pertaining to this request.

Throws

Name
Fault
Details
ChangeSetNotFoundException
client

The specified change set name or ID doesn't exit. To view valid change sets for a stack, use the ListChangeSets operation.

InsufficientCapabilitiesException
client

The template contains resources with capabilities that weren't specified in the Capabilities parameter.

InvalidChangeSetStatusException
client

The specified change set can't be used to update the stack. For example, the change set status might be CREATE_IN_PROGRESS, or the stack status might be UPDATE_IN_PROGRESS.

TokenAlreadyExistsException
client

A client request token already exists.

CloudFormationServiceException
Base exception class for all service exceptions from CloudFormation service.