Files
agent-claw/cdk/node_modules/aws-cdk-lib/aws-batch/lib/ecs-job-definition.d.ts
2026-05-06 18:55:16 -05:00

74 lines
2.3 KiB
TypeScript

import type { Construct } from 'constructs';
import type { IEcsContainerDefinition } from './ecs-container-definition';
import type { IJobDefinition, JobDefinitionProps } from './job-definition-base';
import { JobDefinitionBase } from './job-definition-base';
import * as iam from '../../aws-iam';
import type { IJobQueueRef } from '../../interfaces/generated/aws-batch-interfaces.generated';
/**
* A JobDefinition that uses ECS orchestration
*/
interface IEcsJobDefinition extends IJobDefinition {
/**
* The container that this job will run
*/
readonly container: IEcsContainerDefinition;
/**
* Whether to propagate tags from the JobDefinition
* to the ECS task that Batch spawns
*
* @default false
*/
readonly propagateTags?: boolean;
}
/**
* @internal
*/
export declare enum Compatibility {
EC2 = "EC2",
FARGATE = "FARGATE"
}
/**
* Props for EcsJobDefinition
*/
export interface EcsJobDefinitionProps extends JobDefinitionProps {
/**
* The container that this job will run
*/
readonly container: IEcsContainerDefinition;
/**
* Whether to propagate tags from the JobDefinition
* to the ECS task that Batch spawns
*
* @default false
*/
readonly propagateTags?: boolean;
}
/**
* A JobDefinition that uses ECS orchestration
*
* @resource AWS::Batch::JobDefinition
*/
export declare class EcsJobDefinition extends JobDefinitionBase implements IEcsJobDefinition {
/** Uniquely identifies this class. */
static readonly PROPERTY_INJECTION_ID: string;
/**
* Import a JobDefinition by its arn.
*/
static fromJobDefinitionArn(scope: Construct, id: string, jobDefinitionArn: string): IJobDefinition;
private static getJobDefinitionName;
readonly container: IEcsContainerDefinition;
readonly propagateTags?: boolean;
private readonly resource;
get jobDefinitionArn(): string;
get jobDefinitionName(): string;
constructor(scope: Construct, id: string, props: EcsJobDefinitionProps);
/**
* Grants the `batch:submitJob` permission to the identity on both this job definition and the `queue`
*
* [disable-awslint:no-grants]
*/
grantSubmitJob(identity: iam.IGrantable, queue: IJobQueueRef): void;
private renderPlatformCapabilities;
}
export {};