# atmos aws cloudformation tree

Render the deployed stack's nested-stack dependency tree: walk the stack's
resources, recursing into every `AWS::CloudFormation::Stack` resource, up to
10 levels deep.

> ⚠️ 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 tree <component> --stack <stack> [options]
```

## Examples

```shell
atmos aws cloudformation tree vpc -s plat-ue2-dev
```

Render trees for all or affected components in dependency order:

```shell
atmos aws cloudformation tree --all -s plat-ue2-dev
atmos aws cloudformation tree --affected --base origin/main
```

## 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 
  `--all`
  , 
  `--affected`
  , 
  `--tags`
  , or 
  `--labels`
  , this is an optional stack filter; omit it to select components across stacks.

## Output

```text
vpc-plat-ue2-dev
├─ NatGatewayStack (vpc-plat-ue2-dev-NatGatewayStack-AB12CD34)
└─ SubnetsStack (vpc-plat-ue2-dev-SubnetsStack-EF56GH78)
```

The root is the stack name. Each nested stack shows its logical resource ID in the parent, followed by
its stack name in parentheses; stack ARNs are not shown.

A nested stack whose `AWS::CloudFormation::Stack` resource is still
`CREATE_IN_PROGRESS` (and so has no physical resource ID yet) is not shown —
`tree` recurses only into nested stacks that have actually been created.

This command does not fire [lifecycle hooks](/stacks/components/aws-cloudformation#lifecycle-hooks).

## Try it out

Requires Docker or Podman, Python 3, and network access. Deploy the demo into the local AWS emulator, inspect it, then clean up. No AWS account is needed.

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