atmos aws cloudformation deploy
Create or update a CloudFormation stack without an interactive confirmation.
This is an alias for apply with
--auto-approve enabled by default.
Configure templates, parameters, and delivery targets for your component.
Usage
atmos aws cloudformation deploy <component> --stack <stack> [options]
Examples
atmos aws cloudformation deploy vpc -s plat-ue2-dev
# Deploy components filtered by tags or labels (composes with --all/--affected)
atmos aws cloudformation deploy --all --tags production,tier-1
atmos aws cloudformation deploy --affected --labels cost-center=platform
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.
--target(optional)- Provision target to deliver to. Defaults to
provision.default, otherwise the implicit direct-deploy target. --auto-approve(optional, defaults totrue)- Skip the interactive confirmation prompt. Pass
--auto-approve=falseto require confirmation, just likeapplywithout the flag. --all(optional)- Process all
aws/cloudformationcomponents. Deployment runs dependencies first; deletion runs consumers first. --affected(optional)- Process affected
aws/cloudformationcomponents and their dependencies. Compares the working tree against a base: see--baseand the Git flags below. --include-dependents(optional)- With
--affected, include dependentaws/cloudformationcomponents. --base(optional)- Git base ref or SHA to compare against for affected detection:
--base=origin/main. A value that looks like a commit SHA is treated as--sha, anything else as--ref. Used with--affected. --tags(optional)- Filter by tags (comma-separated, matches any):
--tags=production,tier-1. Composes with--all/--affectedto narrow the selected set further; cannot be combined with a single component argument. --labels(optional)- Filter by labels (repeatable and/or comma-separated
key=valueorkey:valuepairs, matches all):--labels=cost-center=platform,compliance=sox. Composes with--all/--affected/--tags; cannot be combined with a single component argument. --ci(optional)- Enable CI integration for supported operations when
ci.enabledis configured. Summary and output-variable publishing use their respective CI settings. Also enabled byCIandATMOS_CI. --ref(optional)- Git ref to compare against for affected detection. Used with
--affected. --sha(optional)- Git SHA to compare against for affected detection. Used with
--affected. --repo-path(optional)- Path to an already cloned target repository to use as the affected baseline. Used with
--affected. --clone-target-ref(optional)- Clone the target ref instead of checking it out in the current repository for affected detection. Used with
--affected. --ssh-key(optional)- Path to the SSH private key used to clone the target ref for affected detection. Used with
--clone-target-ref. --ssh-key-password(optional)- Password for the SSH private key used to clone the target ref for affected detection. Used with
--clone-target-ref. --skip-hooks(optional)- Skip lifecycle hooks for this invocation.
--skip-hookswith no value skips every hook;--skip-hooks=name1,name2skips only the named hooks. Equivalent to theATMOS_SKIP_HOOKSenvironment variable.
Behavior
deploy runs exactly like apply
with the confirmation turned off: it creates the changeset, prints the predicted
changes on stderr, and executes the changeset without asking. A changeset that
would change nothing is deleted, deploy prints No changes, and the follow-up
steps still run. With --auto-approve=false it asks after showing the changes,
like apply.
Try it out
- Install Atmos
- Try the example
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