class Aws::EventBridge::Types::EcsParameters

The custom parameters to be used when the target is an Amazon ECS task.

@note When making an API call, you may pass EcsParameters

data as a hash:

    {
      task_definition_arn: "Arn", # required
      task_count: 1,
      launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
      network_configuration: {
        awsvpc_configuration: {
          subnets: ["String"], # required
          security_groups: ["String"],
          assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
        },
      },
      platform_version: "String",
      group: "String",
      capacity_provider_strategy: [
        {
          capacity_provider: "CapacityProvider", # required
          weight: 1,
          base: 1,
        },
      ],
      enable_ecs_managed_tags: false,
      enable_execute_command: false,
      placement_constraints: [
        {
          type: "distinctInstance", # accepts distinctInstance, memberOf
          expression: "PlacementConstraintExpression",
        },
      ],
      placement_strategy: [
        {
          type: "random", # accepts random, spread, binpack
          field: "PlacementStrategyField",
        },
      ],
      propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION
      reference_id: "ReferenceId",
      tags: [
        {
          key: "TagKey", # required
          value: "TagValue", # required
        },
      ],
    }

@!attribute [rw] task_definition_arn

The ARN of the task definition to use if the event target is an
Amazon ECS task.
@return [String]

@!attribute [rw] task_count

The number of tasks to create based on `TaskDefinition`. The default
is 1.
@return [Integer]

@!attribute [rw] launch_type

Specifies the launch type on which your task is running. The launch
type that you specify here must match one of the launch type
(compatibilities) of the target task. The `FARGATE` value is
supported only in the Regions where Fargate witt Amazon ECS is
supported. For more information, see [Fargate on Amazon ECS][1] in
the *Amazon Elastic Container Service Developer Guide*.

[1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS-Fargate.html
@return [String]

@!attribute [rw] network_configuration

Use this structure if the Amazon ECS task uses the `awsvpc` network
mode. This structure specifies the VPC subnets and security groups
associated with the task, and whether a public IP address is to be
used. This structure is required if `LaunchType` is `FARGATE`
because the `awsvpc` mode is required for Fargate tasks.

If you specify `NetworkConfiguration` when the target ECS task does
not use the `awsvpc` network mode, the task fails.
@return [Types::NetworkConfiguration]

@!attribute [rw] platform_version

Specifies the platform version for the task. Specify only the
numeric portion of the platform version, such as `1.1.0`.

This structure is used only if `LaunchType` is `FARGATE`. For more
information about valid platform versions, see [Fargate Platform
Versions][1] in the *Amazon Elastic Container Service Developer
Guide*.

[1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html
@return [String]

@!attribute [rw] group

Specifies an ECS task group for the task. The maximum length is 255
characters.
@return [String]

@!attribute [rw] capacity_provider_strategy

The capacity provider strategy to use for the task.

If a `capacityProviderStrategy` is specified, the `launchType`
parameter must be omitted. If no `capacityProviderStrategy` or
launchType is specified, the `defaultCapacityProviderStrategy` for
the cluster is used.
@return [Array<Types::CapacityProviderStrategyItem>]

@!attribute [rw] enable_ecs_managed_tags

Specifies whether to enable Amazon ECS managed tags for the task.
For more information, see [Tagging Your Amazon ECS Resources][1] in
the Amazon Elastic Container Service Developer Guide.

[1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
@return [Boolean]

@!attribute [rw] enable_execute_command

Whether or not to enable the execute command functionality for the
containers in this task. If true, this enables execute command
functionality on all containers in the task.
@return [Boolean]

@!attribute [rw] placement_constraints

An array of placement constraint objects to use for the task. You
can specify up to 10 constraints per task (including constraints in
the task definition and those specified at runtime).
@return [Array<Types::PlacementConstraint>]

@!attribute [rw] placement_strategy

The placement strategy objects to use for the task. You can specify
a maximum of five strategy rules per task.
@return [Array<Types::PlacementStrategy>]

@!attribute [rw] propagate_tags

Specifies whether to propagate the tags from the task definition to
the task. If no value is specified, the tags are not propagated.
Tags can only be propagated to the task during task creation. To add
tags to a task after task creation, use the TagResource API action.
@return [String]

@!attribute [rw] reference_id

The reference ID to use for the task.
@return [String]

@!attribute [rw] tags

The metadata that you apply to the task to help you categorize and
organize them. Each tag consists of a key and an optional value,
both of which you define. To learn more, see [RunTask][1] in the
Amazon ECS API Reference.

[1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html#ECS-RunTask-request-tags
@return [Array<Types::Tag>]

@see docs.aws.amazon.com/goto/WebAPI/eventbridge-2015-10-07/EcsParameters AWS API Documentation

Constants

SENSITIVE