1. Docs
  2. @pulumi/awsx
  3. ecs

Module ecs

    Resources

    Others

    Resources

    Resource EC2Service

    class EC2Service extends ComponentResource

    Create an ECS Service resource for EC2 with the given unique name, arguments, and options. Creates Task definition if taskDefinitionArgs is specified.

    constructor

    new EC2Service(name: string, args?: EC2ServiceArgs, opts?: pulumi.ComponentResourceOptions)

    Create a EC2Service resource with the given unique name, arguments, and options.

    • name The unique name of the resource.
    • args The arguments to use to populate this resource's properties.
    • opts A bag of options that control this resource's behavior.

    method getData

    protected getData(): Promise<TData>

    Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

    method getProvider

    getProvider(moduleMember: string): ProviderResource | undefined

    method initialize

    protected initialize(args: Inputs): Promise<TData>

    Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

    method isInstance

    public static isInstance(obj: any): obj is EC2Service

    Returns true if the given object is an instance of EC2Service. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

    method registerOutputs

    protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

    registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

    ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

    property service

    public service: pulumi.Output<Service>;

    Underlying ECS Service resource

    property taskDefinition

    public taskDefinition: pulumi.Output<TaskDefinition | undefined>;

    Underlying EC2 Task definition component resource if created from args

    property urn

    urn: Output<URN>;

    urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

    Resource EC2TaskDefinition

    class EC2TaskDefinition extends ComponentResource

    Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.

    constructor

    new EC2TaskDefinition(name: string, args?: EC2TaskDefinitionArgs, opts?: pulumi.ComponentResourceOptions)

    Create a EC2TaskDefinition resource with the given unique name, arguments, and options.

    • name The unique name of the resource.
    • args The arguments to use to populate this resource's properties.
    • opts A bag of options that control this resource's behavior.

    method getData

    protected getData(): Promise<TData>

    Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

    method getProvider

    getProvider(moduleMember: string): ProviderResource | undefined

    method initialize

    protected initialize(args: Inputs): Promise<TData>

    Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

    method isInstance

    public static isInstance(obj: any): obj is EC2TaskDefinition

    Returns true if the given object is an instance of EC2TaskDefinition. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

    method registerOutputs

    protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

    registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

    ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

    property executionRole

    public executionRole: pulumi.Output<Role | undefined>;

    Auto-created IAM task execution role that the Amazon ECS container agent and the Docker daemon can assume.

    property loadBalancers

    public loadBalancers: pulumi.Output<ServiceLoadBalancer[]>;

    Computed load balancers from target groups specified of container port mappings.

    property logGroup

    public logGroup: pulumi.Output<LogGroup | undefined>;

    Auto-created Log Group resource for use by containers.

    property taskDefinition

    public taskDefinition: pulumi.Output<TaskDefinition>;

    Underlying ECS Task Definition resource

    property taskRole

    public taskRole: pulumi.Output<Role | undefined>;

    Auto-created IAM role that allows your Amazon ECS container task to make calls to other AWS services.

    property urn

    urn: Output<URN>;

    urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

    Resource FargateService

    class FargateService extends ComponentResource

    Create an ECS Service resource for Fargate with the given unique name, arguments, and options. Creates Task definition if taskDefinitionArgs is specified.

    constructor

    new FargateService(name: string, args?: FargateServiceArgs, opts?: pulumi.ComponentResourceOptions)

    Create a FargateService resource with the given unique name, arguments, and options.

    • name The unique name of the resource.
    • args The arguments to use to populate this resource's properties.
    • opts A bag of options that control this resource's behavior.

    method getData

    protected getData(): Promise<TData>

    Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

    method getProvider

    getProvider(moduleMember: string): ProviderResource | undefined

    method initialize

    protected initialize(args: Inputs): Promise<TData>

    Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

    method isInstance

    public static isInstance(obj: any): obj is FargateService

    Returns true if the given object is an instance of FargateService. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

    method registerOutputs

    protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

    registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

    ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

    property service

    public service: pulumi.Output<Service>;

    Underlying ECS Service resource

    property taskDefinition

    public taskDefinition: pulumi.Output<TaskDefinition | undefined>;

    Underlying Fargate component resource if created from args

    property urn

    urn: Output<URN>;

    urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

    Resource FargateTaskDefinition

    class FargateTaskDefinition extends ComponentResource

    Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.

    constructor

    new FargateTaskDefinition(name: string, args?: FargateTaskDefinitionArgs, opts?: pulumi.ComponentResourceOptions)

    Create a FargateTaskDefinition resource with the given unique name, arguments, and options.

    • name The unique name of the resource.
    • args The arguments to use to populate this resource's properties.
    • opts A bag of options that control this resource's behavior.

    method getData

    protected getData(): Promise<TData>

    Retrieves the data produces by [initialize]. The data is immediately available in a derived class’s constructor after the super(...) call to ComponentResource.

    method getProvider

    getProvider(moduleMember: string): ProviderResource | undefined

    method initialize

    protected initialize(args: Inputs): Promise<TData>

    Can be overridden by a subclass to asynchronously initialize data for this Component automatically when constructed. The data will be available immediately for subclass constructors to use. To access the data use .getData.

    method isInstance

    public static isInstance(obj: any): obj is FargateTaskDefinition

    Returns true if the given object is an instance of FargateTaskDefinition. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

    method registerOutputs

    protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

    registerOutputs registers synthetic outputs that a component has initialized, usually by allocating other child sub-resources and propagating their resulting property values.

    ComponentResources can call this at the end of their constructor to indicate that they are done creating child resources. This is not strictly necessary as this will automatically be called after the initialize method completes.

    property executionRole

    public executionRole: pulumi.Output<Role | undefined>;

    Auto-created IAM task execution role that the Amazon ECS container agent and the Docker daemon can assume.

    property loadBalancers

    public loadBalancers: pulumi.Output<ServiceLoadBalancer[]>;

    Computed load balancers from target groups specified of container port mappings.

    property logGroup

    public logGroup: pulumi.Output<LogGroup | undefined>;

    Auto-created Log Group resource for use by containers.

    property taskDefinition

    public taskDefinition: pulumi.Output<TaskDefinition>;

    Underlying ECS Task Definition resource

    property taskRole

    public taskRole: pulumi.Output<Role | undefined>;

    Auto-created IAM role that allows your Amazon ECS container task to make calls to other AWS services.

    property urn

    urn: Output<URN>;

    urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

    Others

    interface EC2ServiceArgs

    interface EC2ServiceArgs

    The set of arguments for constructing a EC2Service resource.

    property cluster

    cluster?: pulumi.Input<string>;

    ARN of an ECS cluster.

    property continueBeforeSteadyState

    continueBeforeSteadyState?: pulumi.Input<boolean>;

    If true, this provider will not wait for the service to reach a steady state (like aws ecs wait services-stable) before continuing. Default false.

    property deploymentCircuitBreaker

    deploymentCircuitBreaker?: pulumi.Input<ServiceDeploymentCircuitBreaker>;

    Configuration block for deployment circuit breaker. See below.

    property deploymentController

    deploymentController?: pulumi.Input<ServiceDeploymentController>;

    Configuration block for deployment controller configuration. See below.

    property deploymentMaximumPercent

    deploymentMaximumPercent?: pulumi.Input<number>;

    Upper limit (as a percentage of the service’s desiredCount) of the number of running tasks that can be running in a service during a deployment. Not valid when using the DAEMON scheduling strategy.

    property deploymentMinimumHealthyPercent

    deploymentMinimumHealthyPercent?: pulumi.Input<number>;

    Lower limit (as a percentage of the service’s desiredCount) of the number of running tasks that must remain running and healthy in a service during a deployment.

    property desiredCount

    desiredCount?: pulumi.Input<number>;

    Number of instances of the task definition to place and keep running. Defaults to 0. Do not specify if using the DAEMON scheduling strategy.

    property enableEcsManagedTags

    enableEcsManagedTags?: pulumi.Input<boolean>;

    Specifies whether to enable Amazon ECS managed tags for the tasks within the service.

    property enableExecuteCommand

    enableExecuteCommand?: pulumi.Input<boolean>;

    Specifies whether to enable Amazon ECS Exec for the tasks within the service.

    property forceNewDeployment

    forceNewDeployment?: pulumi.Input<boolean>;

    Enable to force a new task deployment of the service. This can be used to update tasks to use a newer Docker image with same image/tag combination (e.g., myimage:latest), roll Fargate tasks onto a newer platform version, or immediately deploy ordered_placement_strategy and placement_constraints updates.

    property healthCheckGracePeriodSeconds

    healthCheckGracePeriodSeconds?: pulumi.Input<number>;

    Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 2147483647. Only valid for services configured to use load balancers.

    property iamRole

    iamRole?: pulumi.Input<string>;

    ARN of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is required if you are using a load balancer with your service, but only if your task definition does not use the awsvpc network mode. If using awsvpc network mode, do not specify this role. If your account has already created the Amazon ECS service-linked role, that role is used by default for your service unless you specify a role here.

    property loadBalancers

    loadBalancers?: pulumi.Input<pulumi.Input<ServiceLoadBalancer>[]>;

    Configuration block for load balancers. See below.

    property name

    name?: pulumi.Input<string>;

    Name of the service (up to 255 letters, numbers, hyphens, and underscores)

    property networkConfiguration

    networkConfiguration?: pulumi.Input<ServiceNetworkConfiguration>;

    Network configuration for the service. This parameter is required for task definitions that use the awsvpc network mode to receive their own Elastic Network Interface, and it is not supported for other network modes. See below.

    property orderedPlacementStrategies

    orderedPlacementStrategies?: pulumi.Input<pulumi.Input<ServiceOrderedPlacementStrategy>[]>;

    Service level strategy rules that are taken into consideration during task placement. List from top to bottom in order of precedence. Updates to this configuration will take effect next task deployment unless force_new_deployment is enabled. The maximum number of ordered_placement_strategy blocks is 5. See below.

    property placementConstraints

    placementConstraints?: pulumi.Input<pulumi.Input<ServicePlacementConstraint>[]>;

    Rules that are taken into consideration during task placement. Updates to this configuration will take effect next task deployment unless force_new_deployment is enabled. Maximum number of placement_constraints is 10. See below.

    property platformVersion

    platformVersion?: pulumi.Input<string>;

    Platform version on which to run your service. Only applicable for launch_type set to FARGATE. Defaults to LATEST. More information about Fargate platform versions can be found in the AWS ECS User Guide.

    property propagateTags

    propagateTags?: pulumi.Input<string>;

    Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are SERVICE and TASK_DEFINITION.

    property schedulingStrategy

    schedulingStrategy?: pulumi.Input<string>;

    Scheduling strategy to use for the service. The valid values are REPLICA and DAEMON. Defaults to REPLICA. Note that Tasks using the Fargate launch type or the CODE_DEPLOY or EXTERNAL deployment controller types don’t support the DAEMON scheduling strategy.

    property serviceRegistries

    serviceRegistries?: pulumi.Input<ServiceServiceRegistries>;

    Service discovery registries for the service. The maximum number of service_registries blocks is 1. See below.

    property tags

    tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

    Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    property taskDefinition

    taskDefinition?: pulumi.Input<string>;

    Family and revision (family:revision) or full ARN of the task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.

    property taskDefinitionArgs

    taskDefinitionArgs?: inputs.ecs.EC2ServiceTaskDefinitionArgs;

    The args of task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.

    interface EC2TaskDefinitionArgs

    interface EC2TaskDefinitionArgs

    The set of arguments for constructing a EC2TaskDefinition resource.

    property container

    container?: inputs.ecs.TaskDefinitionContainerDefinitionArgs;

    Single container to make a TaskDefinition from. Useful for simple cases where there aren’t multiple containers, especially when creating a TaskDefinition to call [run] on.

    Either [container] or [containers] must be provided.

    property containers

    containers?: undefined | {[key: string]: TaskDefinitionContainerDefinitionArgs};

    All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.

    Either [container] or [containers] must be provided.

    property cpu

    cpu?: pulumi.Input<string>;

    The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]

    property ephemeralStorage

    ephemeralStorage?: pulumi.Input<TaskDefinitionEphemeralStorage>;

    The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate. See Ephemeral Storage.

    property executionRole

    executionRole?: inputs.awsx.DefaultRoleWithPolicyArgs;

    The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.

    property family

    family?: pulumi.Input<string>;

    An optional unique name for your task definition. If not specified, then a default will be created.

    property inferenceAccelerators

    inferenceAccelerators?: pulumi.Input<pulumi.Input<TaskDefinitionInferenceAccelerator>[]>;

    Configuration block(s) with Inference Accelerators settings. Detailed below.

    property ipcMode

    ipcMode?: pulumi.Input<string>;

    IPC resource namespace to be used for the containers in the task The valid values are host, task, and none.

    property logGroup

    logGroup?: inputs.awsx.DefaultLogGroupArgs;

    A set of volume blocks that containers in your task may use.

    property memory

    memory?: pulumi.Input<string>;

    The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]

    property networkMode

    networkMode?: pulumi.Input<string>;

    Docker networking mode to use for the containers in the task. Valid values are none, bridge, awsvpc, and host.

    property pidMode

    pidMode?: pulumi.Input<string>;

    Process namespace to use for the containers in the task. The valid values are host and task.

    property placementConstraints

    placementConstraints?: pulumi.Input<pulumi.Input<TaskDefinitionPlacementConstraint>[]>;

    Configuration block for rules that are taken into consideration during task placement. Maximum number of placement_constraints is 10. Detailed below.

    property proxyConfiguration

    proxyConfiguration?: pulumi.Input<TaskDefinitionProxyConfiguration>;

    Configuration block for the App Mesh proxy. Detailed below.

    property runtimePlatform

    runtimePlatform?: pulumi.Input<TaskDefinitionRuntimePlatform>;

    Configuration block for runtime_platform that containers in your task may use.

    property skipDestroy

    skipDestroy?: pulumi.Input<boolean>;

    property tags

    tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

    Key-value map of resource tags.

    property taskRole

    taskRole?: inputs.awsx.DefaultRoleWithPolicyArgs;

    IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.

    property volumes

    volumes?: pulumi.Input<pulumi.Input<TaskDefinitionVolume>[]>;

    Configuration block for volumes that containers in your task may use. Detailed below.

    interface FargateServiceArgs

    interface FargateServiceArgs

    The set of arguments for constructing a FargateService resource.

    property assignPublicIp

    assignPublicIp?: pulumi.Input<boolean>;

    Assign a public IP address to the ENI (Fargate launch type only). Valid values are true or false. Default false.

    property cluster

    cluster?: pulumi.Input<string>;

    ARN of an ECS cluster.

    property continueBeforeSteadyState

    continueBeforeSteadyState?: pulumi.Input<boolean>;

    If true, this provider will not wait for the service to reach a steady state (like aws ecs wait services-stable) before continuing. Default false.

    property deploymentCircuitBreaker

    deploymentCircuitBreaker?: pulumi.Input<ServiceDeploymentCircuitBreaker>;

    Configuration block for deployment circuit breaker. See below.

    property deploymentController

    deploymentController?: pulumi.Input<ServiceDeploymentController>;

    Configuration block for deployment controller configuration. See below.

    property deploymentMaximumPercent

    deploymentMaximumPercent?: pulumi.Input<number>;

    Upper limit (as a percentage of the service’s desiredCount) of the number of running tasks that can be running in a service during a deployment. Not valid when using the DAEMON scheduling strategy.

    property deploymentMinimumHealthyPercent

    deploymentMinimumHealthyPercent?: pulumi.Input<number>;

    Lower limit (as a percentage of the service’s desiredCount) of the number of running tasks that must remain running and healthy in a service during a deployment.

    property desiredCount

    desiredCount?: pulumi.Input<number>;

    Number of instances of the task definition to place and keep running. Defaults to 0. Do not specify if using the DAEMON scheduling strategy.

    property enableEcsManagedTags

    enableEcsManagedTags?: pulumi.Input<boolean>;

    Specifies whether to enable Amazon ECS managed tags for the tasks within the service.

    property enableExecuteCommand

    enableExecuteCommand?: pulumi.Input<boolean>;

    Specifies whether to enable Amazon ECS Exec for the tasks within the service.

    property forceNewDeployment

    forceNewDeployment?: pulumi.Input<boolean>;

    Enable to force a new task deployment of the service. This can be used to update tasks to use a newer Docker image with same image/tag combination (e.g., myimage:latest), roll Fargate tasks onto a newer platform version, or immediately deploy ordered_placement_strategy and placement_constraints updates.

    property healthCheckGracePeriodSeconds

    healthCheckGracePeriodSeconds?: pulumi.Input<number>;

    Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 2147483647. Only valid for services configured to use load balancers.

    property iamRole

    iamRole?: pulumi.Input<string>;

    ARN of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is required if you are using a load balancer with your service, but only if your task definition does not use the awsvpc network mode. If using awsvpc network mode, do not specify this role. If your account has already created the Amazon ECS service-linked role, that role is used by default for your service unless you specify a role here.

    property loadBalancers

    loadBalancers?: pulumi.Input<pulumi.Input<ServiceLoadBalancer>[]>;

    Configuration block for load balancers. See below.

    property name

    name?: pulumi.Input<string>;

    Name of the service (up to 255 letters, numbers, hyphens, and underscores)

    property networkConfiguration

    networkConfiguration?: pulumi.Input<ServiceNetworkConfiguration>;

    Network configuration for the service. This parameter is required for task definitions that use the awsvpc network mode to receive their own Elastic Network Interface, and it is not supported for other network modes. See below.

    property placementConstraints

    placementConstraints?: pulumi.Input<pulumi.Input<ServicePlacementConstraint>[]>;

    Rules that are taken into consideration during task placement. Updates to this configuration will take effect next task deployment unless force_new_deployment is enabled. Maximum number of placement_constraints is 10. See below.

    property platformVersion

    platformVersion?: pulumi.Input<string>;

    Platform version on which to run your service. Only applicable for launch_type set to FARGATE. Defaults to LATEST. More information about Fargate platform versions can be found in the AWS ECS User Guide.

    property propagateTags

    propagateTags?: pulumi.Input<string>;

    Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are SERVICE and TASK_DEFINITION.

    property schedulingStrategy

    schedulingStrategy?: pulumi.Input<string>;

    Scheduling strategy to use for the service. The valid values are REPLICA and DAEMON. Defaults to REPLICA. Note that Tasks using the Fargate launch type or the CODE_DEPLOY or EXTERNAL deployment controller types don’t support the DAEMON scheduling strategy.

    property serviceRegistries

    serviceRegistries?: pulumi.Input<ServiceServiceRegistries>;

    Service discovery registries for the service. The maximum number of service_registries blocks is 1. See below.

    property tags

    tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

    Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    property taskDefinition

    taskDefinition?: pulumi.Input<string>;

    Family and revision (family:revision) or full ARN of the task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.

    property taskDefinitionArgs

    taskDefinitionArgs?: inputs.ecs.FargateServiceTaskDefinitionArgs;

    The args of task definition that you want to run in your service. Either [taskDefinition] or [taskDefinitionArgs] must be provided.

    interface FargateTaskDefinitionArgs

    interface FargateTaskDefinitionArgs

    The set of arguments for constructing a FargateTaskDefinition resource.

    property container

    container?: inputs.ecs.TaskDefinitionContainerDefinitionArgs;

    Single container to make a TaskDefinition from. Useful for simple cases where there aren’t multiple containers, especially when creating a TaskDefinition to call [run] on.

    Either [container] or [containers] must be provided.

    property containers

    containers?: undefined | {[key: string]: TaskDefinitionContainerDefinitionArgs};

    All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.

    Either [container] or [containers] must be provided.

    property cpu

    cpu?: pulumi.Input<string>;

    The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]

    property ephemeralStorage

    ephemeralStorage?: pulumi.Input<TaskDefinitionEphemeralStorage>;

    The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate. See Ephemeral Storage.

    property executionRole

    executionRole?: inputs.awsx.DefaultRoleWithPolicyArgs;

    The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.

    property family

    family?: pulumi.Input<string>;

    An optional unique name for your task definition. If not specified, then a default will be created.

    property inferenceAccelerators

    inferenceAccelerators?: pulumi.Input<pulumi.Input<TaskDefinitionInferenceAccelerator>[]>;

    Configuration block(s) with Inference Accelerators settings. Detailed below.

    property ipcMode

    ipcMode?: pulumi.Input<string>;

    IPC resource namespace to be used for the containers in the task The valid values are host, task, and none.

    property logGroup

    logGroup?: inputs.awsx.DefaultLogGroupArgs;

    A set of volume blocks that containers in your task may use.

    property memory

    memory?: pulumi.Input<string>;

    The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]

    property pidMode

    pidMode?: pulumi.Input<string>;

    Process namespace to use for the containers in the task. The valid values are host and task.

    property placementConstraints

    placementConstraints?: pulumi.Input<pulumi.Input<TaskDefinitionPlacementConstraint>[]>;

    Configuration block for rules that are taken into consideration during task placement. Maximum number of placement_constraints is 10. Detailed below.

    property proxyConfiguration

    proxyConfiguration?: pulumi.Input<TaskDefinitionProxyConfiguration>;

    Configuration block for the App Mesh proxy. Detailed below.

    property runtimePlatform

    runtimePlatform?: pulumi.Input<TaskDefinitionRuntimePlatform>;

    Configuration block for runtime_platform that containers in your task may use.

    property skipDestroy

    skipDestroy?: pulumi.Input<boolean>;

    property tags

    tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

    Key-value map of resource tags.

    property taskRole

    taskRole?: inputs.awsx.DefaultRoleWithPolicyArgs;

    IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.

    property volumes

    volumes?: pulumi.Input<pulumi.Input<TaskDefinitionVolume>[]>;

    Configuration block for volumes that containers in your task may use. Detailed below.

      Pulumi AI - What cloud infrastructure would you like to build? Generate Program