Skip to main content

atmos aws cloudformation

Deploy, inspect, and delete CloudFormation stacks using Atmos stack configuration. The cfn alias is available for every CloudFormation command. No AWS CLI or Rain installation is required.

Experimental
Configure CloudFormation Components

Configure component locations, templates, parameters, and delivery targets.

atmos aws cloudformation --help
 

Usage​

atmos aws cloudformation <subcommand> [options]

Examples​

Preview and apply a component:

atmos aws cloudformation plan vpc -s plat-ue2-dev
atmos aws cloudformation apply vpc -s plat-ue2-dev

Use the short alias:

atmos aws cfn output vpc -s plat-ue2-dev

Select multiple components:

atmos aws cloudformation apply --all -s plat-ue2-dev
atmos aws cloudformation apply --affected --base origin/main

Subcommands​

Execution controls​

--identity, -i
Atmos identity for the operation. Use without a value to select interactively. Also configurable with ATMOS_IDENTITY. An explicit CLI/environment identity overrides target defaults; see Target Authentication.
--dry-run
Validate static configuration without evaluating templates or YAML functions, authenticating, downloading sources, running hooks, or calling AWS. Checks requiring dynamic values are deferred.
--ci
Enable CI integration when ci.enabled is configured. See CI Summaries.
--skip-hooks
Skip all lifecycle hooks, or use --skip-hooks=a,b to skip named hooks. Also configurable with ATMOS_SKIP_HOOKS. Applies to commands that fire hooks.

Bulk Selection​

Component operations accept --all, --affected, --tags, and --labels. Use Git comparison flags such as --base to select affected components. Apply runs dependencies first; deletion runs consumers first.

CI Summaries​

With CI and summary output enabled, diff/plan, apply/deploy, delete, drift detect, and drift describe write job summaries. Dry-run does not.

GitHub Actions uses GITHUB_STEP_SUMMARY. In other CI environments, set ATMOS_CI_SUMMARY to the destination file. CloudFormation also publishes CI output variables, controlled independently by ci.output.enabled and ci.output.variables. It does not publish PR comments, commit statuses, or stored artifacts. See CI configuration.

Try it out​

Copy the example into a new directory and make it your own:

atmos init examples/cloudformation
cd cloudformation

Requires Docker or Podman, Python 3, and network access for the emulator image. Run against the local AWS emulator; the final commands clean up. No AWS account is needed.

atmos config set aliases.cft "aws cloudformation"
atmos emulator up aws -s local
atmos cft deploy demo -s local
atmos cft delete demo -s local --auto-approve
atmos emulator down aws -s local