Skip to content
v2.273.0

CapacityProviderOptions Class ​

Capacity provider options.

Example ​

ts
const vpc = ec2.Vpc.fromLookup(this, 'Vpc', {
  isDefault: true,
});

const cluster = new ecs.Cluster(this, 'FargateCluster', { vpc });

const taskDefinition = new ecs.TaskDefinition(this, 'TD', {
  memoryMiB: '512',
  cpu: '256',
  compatibility: ecs.Compatibility.FARGATE,
});

// Use custom() option - specify custom capacity provider strategy
const runTaskWithCustom = new tasks.EcsRunTask(this, 'RunTaskWithCustom', {
  cluster,
  taskDefinition,
  launchTarget: new tasks.EcsFargateLaunchTarget({
    platformVersion: ecs.FargatePlatformVersion.VERSION1_4,
    capacityProviderOptions: tasks.CapacityProviderOptions.custom([
      { capacityProvider: 'FARGATE_SPOT', weight: 2, base: 1 },
      { capacityProvider: 'FARGATE', weight: 1 },
    ]),
  }),
});

// Use default() option - uses cluster's default capacity provider strategy
const runTaskWithDefault = new tasks.EcsRunTask(this, 'RunTaskWithDefault', {
  cluster,
  taskDefinition,
  launchTarget: new tasks.EcsFargateLaunchTarget({
    platformVersion: ecs.FargatePlatformVersion.VERSION1_4,
    capacityProviderOptions: tasks.CapacityProviderOptions.default(),
  }),
});

Methods ​

custom(capacityProviderStrategy: CapacityProviderStrategy[]): CapacityProviderOptions // chainable@staticmethod def custom(capacity_provider_strategy: typing.List[CapacityProviderStrategy]) -> CapacityProviderOptionspublic static CapacityProviderOptions custom(List<CapacityProviderStrategy> capacityProviderStrategy)public static CapacityProviderOptions Custom(CapacityProviderStrategy[] capacityProviderStrategy)func Custom(CapacityProviderStrategy *[]CapacityProviderStrategy) CapacityProviderOptionsstatic#
Use a custom capacity provider strategy.

You can specify between 1 and 20 capacity providers.

1 parameter

Parameters

  • capacityProviderStrategycapacity_provider_strategycapacityProviderStrategycapacityProviderStrategyCapacityProviderStrategy — The capacity provider strategy to use for the task.
default(): CapacityProviderOptions // chainable@staticmethod def default() -> CapacityProviderOptionspublic static CapacityProviderOptions default()public static CapacityProviderOptions Default()func Default() CapacityProviderOptionsstatic#
Use the cluster's default capacity provider strategy.