Skip to content
v2.275.0

ScheduledTaskBaseProps Struct ​

The properties for the base ScheduledEc2Task or ScheduledFargateTask task.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_applicationautoscaling as appscaling } from 'aws-cdk-lib';
import { aws_ec2 as ec2 } from 'aws-cdk-lib';
import { aws_ecs as ecs } from 'aws-cdk-lib';
import { aws_ecs_patterns as ecs_patterns } from 'aws-cdk-lib';

declare const cluster: ecs.Cluster;
declare const schedule: appscaling.Schedule;
declare const securityGroup: ec2.SecurityGroup;
declare const subnet: ec2.Subnet;
declare const subnetFilter: ec2.SubnetFilter;
declare const vpc: ec2.Vpc;
const scheduledTaskBaseProps: ecs_patterns.ScheduledTaskBaseProps = {
  schedule: schedule,

  // the properties below are optional
  cluster: cluster,
  desiredTaskCount: 123,
  enabled: false,
  propagateTags: ecs.PropagatedTagSource.SERVICE,
  ruleName: 'ruleName',
  securityGroups: [securityGroup],
  subnetSelection: {
    availabilityZones: ['availabilityZones'],
    onePerAz: false,
    subnetFilters: [subnetFilter],
    subnetGroupName: 'subnetGroupName',
    subnets: [subnet],
    subnetType: ec2.SubnetType.PRIVATE_ISOLATED,
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
  vpc: vpc,
};

Properties ​

clusteroptionalIClusterclusteroptionalIClusterclusteroptionalIClusterClusteroptionalIClusterClusteroptionalICluster#
The name of the cluster that hosts the service.

Default: create a new cluster; if both cluster and vpc are omitted, a new VPC will be created for you.

If a cluster is specified, the vpc construct should be omitted. Alternatively, you can omit both cluster and vpc.

desiredTaskCountoptionalnumberdesired_task_countoptionalint | floatdesiredTaskCountoptionalNumberDesiredTaskCountoptionaldoubleDesiredTaskCountoptional*float64= 1#
The desired number of instantiations of the task definition to keep running on the service.
enabledoptionalbooleanenabledoptionalboolenabledoptionalBooleanEnabledoptionalboolEnabledoptional*bool= true#
Indicates whether the rule is enabled.
propagateTagsoptionalPropagatedTagSourcepropagate_tagsoptionalPropagatedTagSourcepropagateTagsoptionalPropagatedTagSourcePropagateTagsoptionalPropagatedTagSourcePropagateTagsoptionalPropagatedTagSource#
Specifies whether to propagate the tags from the task definition to the task.

Default: Tags will not be propagated

If no value is specified, the tags are not propagated.

ruleNameoptionalstringrule_nameoptionalstrruleNameoptionalStringRuleNameoptionalstringRuleNameoptional*string#
A name for the rule.

Default: AWS CloudFormation generates a unique physical ID and uses that ID for the rule name. For more information, see Name Type.

scheduleSchedulescheduleSchedulescheduleScheduleScheduleScheduleScheduleSchedulerequired#
The schedule or rate (frequency) that determines when CloudWatch Events runs the rule.

For more information, see Schedule Expression Syntax for Rules in the Amazon CloudWatch User Guide.

securityGroupsoptionalISecurityGroup[]security_groupsoptionaltyping.List[ISecurityGroup]securityGroupsoptionalList<ISecurityGroup>SecurityGroupsoptionalISecurityGroup[]SecurityGroupsoptional*[]ISecurityGroup#
Existing security groups to use for your service.

Default: a new security group will be created.

subnetSelectionoptionalSubnetSelectionsubnet_selectionoptionalSubnetSelectionsubnetSelectionoptionalSubnetSelectionSubnetSelectionoptionalSubnetSelectionSubnetSelectionoptionalSubnetSelection#
In what subnets to place the task's ENIs.

Default: Private subnets

(Only applicable in case the TaskDefinition is configured for AwsVpc networking)

tagsoptionalTag[]tagsoptionaltyping.List[Tag]tagsoptionalList<Tag>TagsoptionalTag[]Tagsoptional*[]Tag#
The metadata that you apply to the task to help you categorize and organize them.

Default: No tags are applied to the task

Each tag consists of a key and an optional value, both of which you define.

vpcoptionalIVpcvpcoptionalIVpcvpcoptionalIVpcVpcoptionalIVpcVpcoptionalIVpc#
The VPC where the container instances will be launched or the elastic network interfaces (ENIs) will be deployed.

Default: uses the VPC defined in the cluster or creates a new VPC.

If a vpc is specified, the cluster construct should be omitted. Alternatively, you can omit both vpc and cluster.