# atmos aws cloudformation stackset create

Create a CloudFormation StackSet from the component’s template and selected
StackSet target. When both accounts and regions are configured, Atmos also
creates the initial stack instances and waits for completion.

> ⚠️ Experimental

**CloudFormation Configuration**

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

## Usage

```shell
atmos aws cloudformation stackset create <component> --stack <stack> [options]
```

## Examples

```shell
atmos aws cloudformation stackset create vpc -s plat-ue2-dev
```

Skip the interactive confirmation prompt:

```shell
atmos aws cloudformation stackset create vpc -s plat-ue2-dev --auto-approve
```

Disambiguate when the component declares more than one `kind: aws/stackset` target:

```shell
atmos aws cloudformation stackset create vpc -s plat-ue2-dev --target multi-account
```

Create StackSets for all or affected components in dependency order:

```shell
atmos aws cloudformation stackset create --all -s plat-ue2-dev
atmos aws cloudformation stackset create --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.
- **`--target` (optional)**
  The 
  `kind: aws/stackset`
   provision target to use. Required when more than one is declared.
- **`--auto-approve` (optional)**
  Skip the interactive confirmation prompt. Without it, 
  `stackset create`
   prompts for confirmation on a TTY before creating the StackSet.

## Behavior

If the resolved target declares only `accounts` or only `regions` (not both),
`stackset create` stops after creating the StackSet itself — no instances are
created. To add instances to the existing StackSet later, use AWS CloudFormation
directly through [CreateStackInstances](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStackInstances.html).
Atmos currently has no separate command to add instances.

Instance targeting currently supports `SELF_MANAGED` permissions only. A
`SERVICE_MANAGED` target with both `accounts` and `regions` is rejected before
any AWS resources are created. Service-managed targets without both fields
can still create an empty StackSet; manage their instances with AWS CloudFormation.

The `CreateStackInstances` operation is polled every 3 seconds until it
reaches a terminal status (`SUCCEEDED`/`FAILED`/`STOPPED`), and the command
times out after 30 minutes if it hasn't.

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

Quote every account ID as a 12-digit string, for example `accounts: ["012345678901"]`.
Numeric values, mixed-type lists and malformed region names are rejected before creating or
updating a StackSet. Static dry-run performs the same checks for known target values.
