@aws-cdk_aws-batch-alpha.EcsJobDefinition

class EcsJobDefinition (construct) ๐Ÿ”น

LanguageType name
.NETAmazon.CDK.AWS.Batch.Alpha.EcsJobDefinition
Gogithub.com/aws/aws-cdk-go/awscdkbatchalpha/v2#EcsJobDefinition
Javasoftware.amazon.awscdk.services.batch.alpha.EcsJobDefinition
Pythonaws_cdk.aws_batch_alpha.EcsJobDefinition
TypeScript (source)@aws-cdk/aws-batch-alpha ยป EcsJobDefinition

Implements IConstruct, IDependable, IResource, IJobDefinition

A JobDefinition that uses ECS orchestration.

Example

import * as cdk from 'aws-cdk-lib';
import * as efs from 'aws-cdk-lib/aws-efs';

declare const myFileSystem: efs.IFileSystem;

const jobDefn = new batch.EcsJobDefinition(this, 'JobDefn', {
  container: new batch.EcsEc2ContainerDefinition(this, 'containerDefn', {
    image: ecs.ContainerImage.fromRegistry('public.ecr.aws/amazonlinux/amazonlinux:latest'),
    memory: cdk.Size.mebibytes(2048),
    cpu: 256,
    volumes: [batch.EcsVolume.efs({
      name: 'myVolume',
      fileSystem: myFileSystem,
      containerPath: '/Volumes/myVolume',
    })],
  }),
});

Initializer

new EcsJobDefinition(scope: Construct, id: string, props: EcsJobDefinitionProps)

Parameters

  • scope Construct
  • id string
  • props EcsJobDefinitionProps

Construct Props

NameTypeDescription
container๐Ÿ”นIEcsContainerDefinitionThe container that this job will run.
jobDefinitionName?๐Ÿ”นstringThe name of this job definition.
parameters?๐Ÿ”น{ [string]: any }The default parameters passed to the container These parameters can be referenced in the command that you give to the container.
propagateTags?๐Ÿ”นbooleanWhether to propogate tags from the JobDefinition to the ECS task that Batch spawns.
retryAttempts?๐Ÿ”นnumberThe number of times to retry a job.
retryStrategies?๐Ÿ”นRetryStrategy[]Defines the retry behavior for this job.
schedulingPriority?๐Ÿ”นnumberThe priority of this Job.
timeout?๐Ÿ”นDurationThe timeout time for jobs that are submitted with this job definition.

container๐Ÿ”น

Type: IEcsContainerDefinition

The container that this job will run.


jobDefinitionName?๐Ÿ”น

Type: string (optional, default: generated by CloudFormation)

The name of this job definition.


parameters?๐Ÿ”น

Type: { [string]: any } (optional, default: none)

The default parameters passed to the container These parameters can be referenced in the command that you give to the container.

See also: https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html#parameters


propagateTags?๐Ÿ”น

Type: boolean (optional, default: false)

Whether to propogate tags from the JobDefinition to the ECS task that Batch spawns.


retryAttempts?๐Ÿ”น

Type: number (optional, default: 1)

The number of times to retry a job.

The job is retried on failure the same number of attempts as the value.


retryStrategies?๐Ÿ”น

Type: RetryStrategy[] (optional, default: no RetryStrategy)

Defines the retry behavior for this job.


schedulingPriority?๐Ÿ”น

Type: number (optional, default: none)

The priority of this Job.

Only used in Fairshare Scheduling to decide which job to run first when there are multiple jobs with the same share identifier.


timeout?๐Ÿ”น

Type: Duration (optional, default: no timeout)

The timeout time for jobs that are submitted with this job definition.

After the amount of time you specify passes, Batch terminates your jobs if they aren't finished.

Properties

NameTypeDescription
container๐Ÿ”นIEcsContainerDefinitionThe container that this job will run.
env๐Ÿ”นResourceEnvironmentThe environment this resource belongs to.
jobDefinitionArn๐Ÿ”นstringThe ARN of this job definition.
jobDefinitionName๐Ÿ”นstringThe name of this job definition.
node๐Ÿ”นNodeThe tree node.
retryStrategies๐Ÿ”นRetryStrategy[]Defines the retry behavior for this job.
stack๐Ÿ”นStackThe stack in which this resource is defined.
parameters?๐Ÿ”น{ [string]: any }The default parameters passed to the container These parameters can be referenced in the command that you give to the container.
propagateTags?๐Ÿ”นbooleanWhether to propogate tags from the JobDefinition to the ECS task that Batch spawns.
retryAttempts?๐Ÿ”นnumberThe number of times to retry a job.
schedulingPriority?๐Ÿ”นnumberThe priority of this Job.
timeout?๐Ÿ”นDurationThe timeout time for jobs that are submitted with this job definition.

container๐Ÿ”น

Type: IEcsContainerDefinition

The container that this job will run.


env๐Ÿ”น

Type: ResourceEnvironment

The environment this resource belongs to.

For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.


jobDefinitionArn๐Ÿ”น

Type: string

The ARN of this job definition.


jobDefinitionName๐Ÿ”น

Type: string

The name of this job definition.


node๐Ÿ”น

Type: Node

The tree node.


retryStrategies๐Ÿ”น

Type: RetryStrategy[]

Defines the retry behavior for this job.


stack๐Ÿ”น

Type: Stack

The stack in which this resource is defined.


parameters?๐Ÿ”น

Type: { [string]: any } (optional)

The default parameters passed to the container These parameters can be referenced in the command that you give to the container.


propagateTags?๐Ÿ”น

Type: boolean (optional)

Whether to propogate tags from the JobDefinition to the ECS task that Batch spawns.


retryAttempts?๐Ÿ”น

Type: number (optional)

The number of times to retry a job.

The job is retried on failure the same number of attempts as the value.


schedulingPriority?๐Ÿ”น

Type: number (optional)

The priority of this Job.

Only used in Fairshare Scheduling to decide which job to run first when there are multiple jobs with the same share identifier.


timeout?๐Ÿ”น

Type: Duration (optional)

The timeout time for jobs that are submitted with this job definition.

After the amount of time you specify passes, Batch terminates your jobs if they aren't finished.

Methods

NameDescription
addRetryStrategy(strategy)๐Ÿ”นAdd a RetryStrategy to this JobDefinition.
applyRemovalPolicy(policy)๐Ÿ”นApply the given removal policy to this resource.
toString()๐Ÿ”นReturns a string representation of this construct.
static fromJobDefinitionArn(scope, id, jobDefinitionArn)๐Ÿ”นImport a JobDefinition by its arn.

addRetryStrategy(strategy)๐Ÿ”น

public addRetryStrategy(strategy: RetryStrategy): void

Parameters

  • strategy RetryStrategy

Add a RetryStrategy to this JobDefinition.


applyRemovalPolicy(policy)๐Ÿ”น

public applyRemovalPolicy(policy: RemovalPolicy): void

Parameters

  • policy RemovalPolicy

Apply the given removal policy to this resource.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).


toString()๐Ÿ”น

public toString(): string

Returns

  • string

Returns a string representation of this construct.


static fromJobDefinitionArn(scope, id, jobDefinitionArn)๐Ÿ”น

public static fromJobDefinitionArn(scope: Construct, id: string, jobDefinitionArn: string): IJobDefinition

Parameters

  • scope Construct
  • id string
  • jobDefinitionArn string

Returns

  • IJobDefinition

Import a JobDefinition by its arn.