# AddAutoScalingGroupCapacityOptions

The properties for adding an AutoScalingGroup.

- Source: [`aws-ecs/lib/cluster.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/aws-ecs/lib/cluster.ts#L1153)
- Type last changed: v2.233.0 · 18 Dec 2025

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_ecs as ecs } from 'aws-cdk-lib';
import { aws_kms as kms } from 'aws-cdk-lib';

declare const key: kms.Key;
const addAutoScalingGroupCapacityOptions: ecs.AddAutoScalingGroupCapacityOptions = {
  machineImageType: ecs.MachineImageType.AMAZON_LINUX_2,
  spotInstanceDraining: false,
  topicEncryptionKey: key,
};
```

## Properties

- `machineImageType`: [MachineImageType](/cdk/api/v2/docs/aws-cdk-lib.aws_ecs.MachineImageType.html) — What type of machine image this is.

  **Default:** Automatically determined from `machineImage`, if available, otherwise `MachineImageType.AMAZON_LINUX_2`.

  Depending on the setting, different UserData will automatically be added
  to the `AutoScalingGroup` to configure it properly for use with ECS.

  If you create an `AutoScalingGroup` yourself and are adding it via
  `addAutoScalingGroup()`, you must specify this value. If you are adding an
  `autoScalingGroup` via `addCapacity`, this value will be determined
  from the `machineImage` you pass.

- `spotInstanceDraining`: boolean = false — Specify whether to enable Automated Draining for Spot Instances running Amazon ECS Services.

  For more information, see [Using Spot Instances](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-instance-spot.html).

- `topicEncryptionKey`: [IKey](/cdk/api/v2/docs/aws-cdk-lib.aws_kms.IKey.html) — If `AddAutoScalingGroupCapacityOptions.taskDrainTime` is non-zero, then the ECS cluster creates an SNS Topic to as part of a system to drain instances of tasks when the instance is being shut down. If this property is provided, then this key will be used to encrypt the contents of that SNS Topic. See [SNS Data Encryption](https://docs.aws.amazon.com/sns/latest/dg/sns-data-encryption.html) for more information.

  **Default:** The SNS Topic will not be encrypted.
