# atmos aws cloudformation changeset execute

Execute a named changeset and stream events until the operation finishes.
Create the changeset first with
[`changeset create`](/cli/commands/aws/cloudformation/changeset/create).

> ⚠️ Experimental

**CloudFormation Configuration**

Configure templates, parameters, and delivery targets for your component.
Configuration Reference[Read more](/stacks/components/aws-cloudformation)

## Usage

```shell
atmos aws cloudformation changeset execute <component> --stack <stack> --changeset-name <name> [options]
```

## Examples

```shell
atmos aws cloudformation changeset execute vpc -s plat-ue2-dev --changeset-name vpc-2026-08-25
```

Skip the interactive confirmation prompt:

```shell
atmos aws cloudformation changeset execute vpc -s plat-ue2-dev --changeset-name vpc-2026-08-25 --auto-approve
```

## Arguments

- **`component` (required unless selecting multiple components)**
  CloudFormation component name in the Atmos stack.

## Flags

- **`--stack`, `-s` (required for a single component)**
  Atmos stack. With bulk selection flags, limits the selected components to this stack.
- **`--changeset-name` (required)**
  Name of the changeset to execute.
- **`--auto-approve` (optional)**
  Skip the interactive confirmation prompt. Without it, 
  `changeset execute`
   prompts for confirmation on a TTY before executing the changeset.

## Behavior

If the stack ends in a failed status after executing the changeset (e.g.
`UPDATE_ROLLBACK_COMPLETE`), `changeset execute` exits non-zero.

This command fires the `before.aws/cloudformation.changeset-execute` and
`after.aws/cloudformation.changeset-execute` [lifecycle hooks](/stacks/components/aws-cloudformation#lifecycle-hooks).
These events are separate from `apply`, so a hook listed only for
`before.aws/cloudformation.apply` does not run here.

To run an existing hook around the execution, add the event to the hook's
`events` list:

```yaml
hooks:
  notify-deploy:
    events:
      - after.aws/cloudformation.apply
      - after.aws/cloudformation.changeset-execute
```

After a successful named CREATE or UPDATE, Atmos enables configured `termination_protection`,
matching apply. Failure to enable it fails the command even if the deployment completed.
Setting the field to false never disables existing protection; deletion requires the explicit
`--disable-termination-protection` flag.
