ScheduledTaskBaseProps Struct
The properties for the base ScheduledEc2Task or ScheduledFargateTask task.
Example
// 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#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#enabledoptionalbooleanenabledoptionalboolenabledoptionalBooleanEnabledoptionalboolEnabledoptional*bool= true#propagateTagsoptionalPropagatedTagSourcepropagate_tagsoptionalPropagatedTagSourcepropagateTagsoptionalPropagatedTagSourcePropagateTagsoptionalPropagatedTagSourcePropagateTagsoptionalPropagatedTagSource#Default: Tags will not be propagated
If no value is specified, the tags are not propagated.
ruleNameoptionalstringrule_nameoptionalstrruleNameoptionalStringRuleNameoptionalstringRuleNameoptional*string#Default: AWS CloudFormation generates a unique physical ID and uses that ID for the rule name. For more information, see Name Type.
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#Default: a new security group will be created.
subnetSelectionoptionalSubnetSelectionsubnet_selectionoptionalSubnetSelectionsubnetSelectionoptionalSubnetSelectionSubnetSelectionoptionalSubnetSelectionSubnetSelectionoptionalSubnetSelection#Default: Private subnets
(Only applicable in case the TaskDefinition is configured for AwsVpc networking)
tagsoptionalTag[]tagsoptionaltyping.List[Tag]tagsoptionalList<Tag>TagsoptionalTag[]Tagsoptional*[]Tag#Default: No tags are applied to the task
Each tag consists of a key and an optional value, both of which you define.
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.