EcsTask

class aws_cdk.aws_events_targets.EcsTask(*, cluster, task_definition, container_overrides=None, platform_version=None, role=None, security_group=None, security_groups=None, subnet_selection=None, task_count=None)

Bases: object

Start a task on an ECS cluster.

ExampleMetadata:

fixture=basic infused

Example:

from aws_cdk.aws_events import Rule, Schedule
from aws_cdk.aws_events_targets import EcsTask
from aws_cdk.aws_ecs import Cluster, TaskDefinition
from aws_cdk.aws_iam import Role

# cluster: Cluster
# task_definition: TaskDefinition
# role: Role


ecs_task_target = EcsTask(cluster=cluster, task_definition=task_definition, role=role)

Rule(self, "ScheduleRule",
    schedule=Schedule.cron(minute="0", hour="4"),
    targets=[ecs_task_target]
)
Parameters:
  • cluster (ICluster) – Cluster where service will be deployed.

  • task_definition (ITaskDefinition) – Task Definition of the task that should be started.

  • container_overrides (Optional[Sequence[Union[ContainerOverride, Dict[str, Any]]]]) – Container setting overrides. Key is the name of the container to override, value is the values you want to override.

  • platform_version (Optional[FargatePlatformVersion]) – The platform version on which to run your task. Unless you have specific compatibility requirements, you don’t need to specify this. Default: - ECS will set the Fargate platform version to ‘LATEST’

  • role (Optional[IRole]) – Existing IAM role to run the ECS task. Default: A new IAM role is created

  • security_group (Optional[ISecurityGroup]) – (deprecated) Existing security group to use for the task’s ENIs. (Only applicable in case the TaskDefinition is configured for AwsVpc networking) Default: A new security group is created

  • security_groups (Optional[Sequence[ISecurityGroup]]) – Existing security groups to use for the task’s ENIs. (Only applicable in case the TaskDefinition is configured for AwsVpc networking) Default: A new security group is created

  • subnet_selection (Union[SubnetSelection, Dict[str, Any], None]) – In what subnets to place the task’s ENIs. (Only applicable in case the TaskDefinition is configured for AwsVpc networking) Default: Private subnets

  • task_count (Union[int, float, None]) – How many tasks should be started when this event is triggered. Default: 1

Methods

bind(_rule, _id=None)

Allows using tasks as target of EventBridge events.

Parameters:
  • _rule (IRule) –

  • _id (Optional[str]) –

Return type:

RuleTargetConfig

Attributes

security_group

(deprecated) The security group associated with the task.

Only applicable with awsvpc network mode.

Default:
  • A new security group is created.

Deprecated:

use securityGroups instead.

Stability:

deprecated

security_groups

The security groups associated with the task.

Only applicable with awsvpc network mode.

Default:
  • A new security group is created.