Try AWS Native preview for resources not in the classic version.
aws.ecs.TaskDefinition
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
Manages a revision of an ECS task definition to be used in aws.ecs.Service
.
Example Usage
Basic Example
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const service = new aws.ecs.TaskDefinition("service", {
family: "service",
containerDefinitions: JSON.stringify([
{
name: "first",
image: "service-first",
cpu: 10,
memory: 512,
essential: true,
portMappings: [{
containerPort: 80,
hostPort: 80,
}],
},
{
name: "second",
image: "service-second",
cpu: 10,
memory: 256,
essential: true,
portMappings: [{
containerPort: 443,
hostPort: 443,
}],
},
]),
volumes: [{
name: "service-storage",
hostPath: "/ecs/service-storage",
}],
placementConstraints: [{
type: "memberOf",
expression: "attribute:ecs.availability-zone in [us-west-2a, us-west-2b]",
}],
});
import pulumi
import json
import pulumi_aws as aws
service = aws.ecs.TaskDefinition("service",
family="service",
container_definitions=json.dumps([
{
"name": "first",
"image": "service-first",
"cpu": 10,
"memory": 512,
"essential": True,
"portMappings": [{
"containerPort": 80,
"hostPort": 80,
}],
},
{
"name": "second",
"image": "service-second",
"cpu": 10,
"memory": 256,
"essential": True,
"portMappings": [{
"containerPort": 443,
"hostPort": 443,
}],
},
]),
volumes=[{
"name": "service-storage",
"hostPath": "/ecs/service-storage",
}],
placement_constraints=[{
"type": "memberOf",
"expression": "attribute:ecs.availability-zone in [us-west-2a, us-west-2b]",
}])
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
tmpJSON0, err := json.Marshal([]interface{}{
map[string]interface{}{
"name": "first",
"image": "service-first",
"cpu": 10,
"memory": 512,
"essential": true,
"portMappings": []map[string]interface{}{
map[string]interface{}{
"containerPort": 80,
"hostPort": 80,
},
},
},
map[string]interface{}{
"name": "second",
"image": "service-second",
"cpu": 10,
"memory": 256,
"essential": true,
"portMappings": []map[string]interface{}{
map[string]interface{}{
"containerPort": 443,
"hostPort": 443,
},
},
},
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
_, err = ecs.NewTaskDefinition(ctx, "service", &ecs.TaskDefinitionArgs{
Family: pulumi.String("service"),
ContainerDefinitions: pulumi.String(json0),
Volumes: ecs.TaskDefinitionVolumeArray{
&ecs.TaskDefinitionVolumeArgs{
Name: pulumi.String("service-storage"),
HostPath: pulumi.String("/ecs/service-storage"),
},
},
PlacementConstraints: ecs.TaskDefinitionPlacementConstraintArray{
&ecs.TaskDefinitionPlacementConstraintArgs{
Type: pulumi.String("memberOf"),
Expression: pulumi.String("attribute:ecs.availability-zone in [us-west-2a, us-west-2b]"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var service = new Aws.Ecs.TaskDefinition("service", new()
{
Family = "service",
ContainerDefinitions = JsonSerializer.Serialize(new[]
{
new Dictionary<string, object?>
{
["name"] = "first",
["image"] = "service-first",
["cpu"] = 10,
["memory"] = 512,
["essential"] = true,
["portMappings"] = new[]
{
new Dictionary<string, object?>
{
["containerPort"] = 80,
["hostPort"] = 80,
},
},
},
new Dictionary<string, object?>
{
["name"] = "second",
["image"] = "service-second",
["cpu"] = 10,
["memory"] = 256,
["essential"] = true,
["portMappings"] = new[]
{
new Dictionary<string, object?>
{
["containerPort"] = 443,
["hostPort"] = 443,
},
},
},
}),
Volumes = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionVolumeArgs
{
Name = "service-storage",
HostPath = "/ecs/service-storage",
},
},
PlacementConstraints = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionPlacementConstraintArgs
{
Type = "memberOf",
Expression = "attribute:ecs.availability-zone in [us-west-2a, us-west-2b]",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionPlacementConstraintArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var service = new TaskDefinition("service", TaskDefinitionArgs.builder()
.family("service")
.containerDefinitions(serializeJson(
jsonArray(
jsonObject(
jsonProperty("name", "first"),
jsonProperty("image", "service-first"),
jsonProperty("cpu", 10),
jsonProperty("memory", 512),
jsonProperty("essential", true),
jsonProperty("portMappings", jsonArray(jsonObject(
jsonProperty("containerPort", 80),
jsonProperty("hostPort", 80)
)))
),
jsonObject(
jsonProperty("name", "second"),
jsonProperty("image", "service-second"),
jsonProperty("cpu", 10),
jsonProperty("memory", 256),
jsonProperty("essential", true),
jsonProperty("portMappings", jsonArray(jsonObject(
jsonProperty("containerPort", 443),
jsonProperty("hostPort", 443)
)))
)
)))
.volumes(TaskDefinitionVolumeArgs.builder()
.name("service-storage")
.hostPath("/ecs/service-storage")
.build())
.placementConstraints(TaskDefinitionPlacementConstraintArgs.builder()
.type("memberOf")
.expression("attribute:ecs.availability-zone in [us-west-2a, us-west-2b]")
.build())
.build());
}
}
resources:
service:
type: aws:ecs:TaskDefinition
properties:
family: service
containerDefinitions:
fn::toJSON:
- name: first
image: service-first
cpu: 10
memory: 512
essential: true
portMappings:
- containerPort: 80
hostPort: 80
- name: second
image: service-second
cpu: 10
memory: 256
essential: true
portMappings:
- containerPort: 443
hostPort: 443
volumes:
- name: service-storage
hostPath: /ecs/service-storage
placementConstraints:
- type: memberOf
expression: attribute:ecs.availability-zone in [us-west-2a, us-west-2b]
With AppMesh Proxy
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";
const service = new aws.ecs.TaskDefinition("service", {
family: "service",
containerDefinitions: std.file({
input: "task-definitions/service.json",
}).then(invoke => invoke.result),
proxyConfiguration: {
type: "APPMESH",
containerName: "applicationContainerName",
properties: {
AppPorts: "8080",
EgressIgnoredIPs: "169.254.170.2,169.254.169.254",
IgnoredUID: "1337",
ProxyEgressPort: "15001",
ProxyIngressPort: "15000",
},
},
});
import pulumi
import pulumi_aws as aws
import pulumi_std as std
service = aws.ecs.TaskDefinition("service",
family="service",
container_definitions=std.file(input="task-definitions/service.json").result,
proxy_configuration={
"type": "APPMESH",
"containerName": "applicationContainerName",
"properties": {
"AppPorts": "8080",
"EgressIgnoredIPs": "169.254.170.2,169.254.169.254",
"IgnoredUID": "1337",
"ProxyEgressPort": "15001",
"ProxyIngressPort": "15000",
},
})
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
invokeFile, err := std.File(ctx, &std.FileArgs{
Input: "task-definitions/service.json",
}, nil)
if err != nil {
return err
}
_, err = ecs.NewTaskDefinition(ctx, "service", &ecs.TaskDefinitionArgs{
Family: pulumi.String("service"),
ContainerDefinitions: invokeFile.Result,
ProxyConfiguration: &ecs.TaskDefinitionProxyConfigurationArgs{
Type: pulumi.String("APPMESH"),
ContainerName: pulumi.String("applicationContainerName"),
Properties: pulumi.StringMap{
"AppPorts": pulumi.String("8080"),
"EgressIgnoredIPs": pulumi.String("169.254.170.2,169.254.169.254"),
"IgnoredUID": pulumi.String("1337"),
"ProxyEgressPort": pulumi.String("15001"),
"ProxyIngressPort": pulumi.String("15000"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var service = new Aws.Ecs.TaskDefinition("service", new()
{
Family = "service",
ContainerDefinitions = Std.File.Invoke(new()
{
Input = "task-definitions/service.json",
}).Apply(invoke => invoke.Result),
ProxyConfiguration = new Aws.Ecs.Inputs.TaskDefinitionProxyConfigurationArgs
{
Type = "APPMESH",
ContainerName = "applicationContainerName",
Properties =
{
{ "AppPorts", "8080" },
{ "EgressIgnoredIPs", "169.254.170.2,169.254.169.254" },
{ "IgnoredUID", "1337" },
{ "ProxyEgressPort", "15001" },
{ "ProxyIngressPort", "15000" },
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionProxyConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var service = new TaskDefinition("service", TaskDefinitionArgs.builder()
.family("service")
.containerDefinitions(StdFunctions.file(FileArgs.builder()
.input("task-definitions/service.json")
.build()).result())
.proxyConfiguration(TaskDefinitionProxyConfigurationArgs.builder()
.type("APPMESH")
.containerName("applicationContainerName")
.properties(Map.ofEntries(
Map.entry("AppPorts", "8080"),
Map.entry("EgressIgnoredIPs", "169.254.170.2,169.254.169.254"),
Map.entry("IgnoredUID", "1337"),
Map.entry("ProxyEgressPort", 15001),
Map.entry("ProxyIngressPort", 15000)
))
.build())
.build());
}
}
resources:
service:
type: aws:ecs:TaskDefinition
properties:
family: service
containerDefinitions:
fn::invoke:
Function: std:file
Arguments:
input: task-definitions/service.json
Return: result
proxyConfiguration:
type: APPMESH
containerName: applicationContainerName
properties:
AppPorts: '8080'
EgressIgnoredIPs: 169.254.170.2,169.254.169.254
IgnoredUID: '1337'
ProxyEgressPort: 15001
ProxyIngressPort: 15000
Example Using docker_volume_configuration
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";
const service = new aws.ecs.TaskDefinition("service", {
family: "service",
containerDefinitions: std.file({
input: "task-definitions/service.json",
}).then(invoke => invoke.result),
volumes: [{
name: "service-storage",
dockerVolumeConfiguration: {
scope: "shared",
autoprovision: true,
driver: "local",
driverOpts: {
type: "nfs",
device: `${fs.dnsName}:/`,
o: `addr=${fs.dnsName},rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport`,
},
},
}],
});
import pulumi
import pulumi_aws as aws
import pulumi_std as std
service = aws.ecs.TaskDefinition("service",
family="service",
container_definitions=std.file(input="task-definitions/service.json").result,
volumes=[{
"name": "service-storage",
"dockerVolumeConfiguration": {
"scope": "shared",
"autoprovision": True,
"driver": "local",
"driverOpts": {
"type": "nfs",
"device": f"{fs['dnsName']}:/",
"o": f"addr={fs['dnsName']},rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport",
},
},
}])
package main
import (
"fmt"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
invokeFile, err := std.File(ctx, &std.FileArgs{
Input: "task-definitions/service.json",
}, nil)
if err != nil {
return err
}
_, err = ecs.NewTaskDefinition(ctx, "service", &ecs.TaskDefinitionArgs{
Family: pulumi.String("service"),
ContainerDefinitions: invokeFile.Result,
Volumes: ecs.TaskDefinitionVolumeArray{
&ecs.TaskDefinitionVolumeArgs{
Name: pulumi.String("service-storage"),
DockerVolumeConfiguration: &ecs.TaskDefinitionVolumeDockerVolumeConfigurationArgs{
Scope: pulumi.String("shared"),
Autoprovision: pulumi.Bool(true),
Driver: pulumi.String("local"),
DriverOpts: pulumi.StringMap{
"type": pulumi.String("nfs"),
"device": pulumi.String(fmt.Sprintf("%v:/", fs.DnsName)),
"o": pulumi.String(fmt.Sprintf("addr=%v,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport", fs.DnsName)),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var service = new Aws.Ecs.TaskDefinition("service", new()
{
Family = "service",
ContainerDefinitions = Std.File.Invoke(new()
{
Input = "task-definitions/service.json",
}).Apply(invoke => invoke.Result),
Volumes = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionVolumeArgs
{
Name = "service-storage",
DockerVolumeConfiguration = new Aws.Ecs.Inputs.TaskDefinitionVolumeDockerVolumeConfigurationArgs
{
Scope = "shared",
Autoprovision = true,
Driver = "local",
DriverOpts =
{
{ "type", "nfs" },
{ "device", $"{fs.DnsName}:/" },
{ "o", $"addr={fs.DnsName},rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport" },
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeDockerVolumeConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var service = new TaskDefinition("service", TaskDefinitionArgs.builder()
.family("service")
.containerDefinitions(StdFunctions.file(FileArgs.builder()
.input("task-definitions/service.json")
.build()).result())
.volumes(TaskDefinitionVolumeArgs.builder()
.name("service-storage")
.dockerVolumeConfiguration(TaskDefinitionVolumeDockerVolumeConfigurationArgs.builder()
.scope("shared")
.autoprovision(true)
.driver("local")
.driverOpts(Map.ofEntries(
Map.entry("type", "nfs"),
Map.entry("device", String.format("%s:/", fs.dnsName())),
Map.entry("o", String.format("addr=%s,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport", fs.dnsName()))
))
.build())
.build())
.build());
}
}
resources:
service:
type: aws:ecs:TaskDefinition
properties:
family: service
containerDefinitions:
fn::invoke:
Function: std:file
Arguments:
input: task-definitions/service.json
Return: result
volumes:
- name: service-storage
dockerVolumeConfiguration:
scope: shared
autoprovision: true
driver: local
driverOpts:
type: nfs
device: ${fs.dnsName}:/
o: addr=${fs.dnsName},rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport
Example Using efs_volume_configuration
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";
const service = new aws.ecs.TaskDefinition("service", {
family: "service",
containerDefinitions: std.file({
input: "task-definitions/service.json",
}).then(invoke => invoke.result),
volumes: [{
name: "service-storage",
efsVolumeConfiguration: {
fileSystemId: fs.id,
rootDirectory: "/opt/data",
transitEncryption: "ENABLED",
transitEncryptionPort: 2999,
authorizationConfig: {
accessPointId: test.id,
iam: "ENABLED",
},
},
}],
});
import pulumi
import pulumi_aws as aws
import pulumi_std as std
service = aws.ecs.TaskDefinition("service",
family="service",
container_definitions=std.file(input="task-definitions/service.json").result,
volumes=[{
"name": "service-storage",
"efsVolumeConfiguration": {
"fileSystemId": fs["id"],
"rootDirectory": "/opt/data",
"transitEncryption": "ENABLED",
"transitEncryptionPort": 2999,
"authorizationConfig": {
"accessPointId": test["id"],
"iam": "ENABLED",
},
},
}])
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
invokeFile, err := std.File(ctx, &std.FileArgs{
Input: "task-definitions/service.json",
}, nil)
if err != nil {
return err
}
_, err = ecs.NewTaskDefinition(ctx, "service", &ecs.TaskDefinitionArgs{
Family: pulumi.String("service"),
ContainerDefinitions: invokeFile.Result,
Volumes: ecs.TaskDefinitionVolumeArray{
&ecs.TaskDefinitionVolumeArgs{
Name: pulumi.String("service-storage"),
EfsVolumeConfiguration: &ecs.TaskDefinitionVolumeEfsVolumeConfigurationArgs{
FileSystemId: pulumi.Any(fs.Id),
RootDirectory: pulumi.String("/opt/data"),
TransitEncryption: pulumi.String("ENABLED"),
TransitEncryptionPort: pulumi.Int(2999),
AuthorizationConfig: &ecs.TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs{
AccessPointId: pulumi.Any(test.Id),
Iam: pulumi.String("ENABLED"),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var service = new Aws.Ecs.TaskDefinition("service", new()
{
Family = "service",
ContainerDefinitions = Std.File.Invoke(new()
{
Input = "task-definitions/service.json",
}).Apply(invoke => invoke.Result),
Volumes = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionVolumeArgs
{
Name = "service-storage",
EfsVolumeConfiguration = new Aws.Ecs.Inputs.TaskDefinitionVolumeEfsVolumeConfigurationArgs
{
FileSystemId = fs.Id,
RootDirectory = "/opt/data",
TransitEncryption = "ENABLED",
TransitEncryptionPort = 2999,
AuthorizationConfig = new Aws.Ecs.Inputs.TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs
{
AccessPointId = test.Id,
Iam = "ENABLED",
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeEfsVolumeConfigurationArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var service = new TaskDefinition("service", TaskDefinitionArgs.builder()
.family("service")
.containerDefinitions(StdFunctions.file(FileArgs.builder()
.input("task-definitions/service.json")
.build()).result())
.volumes(TaskDefinitionVolumeArgs.builder()
.name("service-storage")
.efsVolumeConfiguration(TaskDefinitionVolumeEfsVolumeConfigurationArgs.builder()
.fileSystemId(fs.id())
.rootDirectory("/opt/data")
.transitEncryption("ENABLED")
.transitEncryptionPort(2999)
.authorizationConfig(TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs.builder()
.accessPointId(test.id())
.iam("ENABLED")
.build())
.build())
.build())
.build());
}
}
resources:
service:
type: aws:ecs:TaskDefinition
properties:
family: service
containerDefinitions:
fn::invoke:
Function: std:file
Arguments:
input: task-definitions/service.json
Return: result
volumes:
- name: service-storage
efsVolumeConfiguration:
fileSystemId: ${fs.id}
rootDirectory: /opt/data
transitEncryption: ENABLED
transitEncryptionPort: 2999
authorizationConfig:
accessPointId: ${test.id}
iam: ENABLED
Example Using fsx_windows_file_server_volume_configuration
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";
const test = new aws.secretsmanager.SecretVersion("test", {
secretId: testAwsSecretsmanagerSecret.id,
secretString: JSON.stringify({
username: "admin",
password: testAwsDirectoryServiceDirectory.password,
}),
});
const service = new aws.ecs.TaskDefinition("service", {
family: "service",
containerDefinitions: std.file({
input: "task-definitions/service.json",
}).then(invoke => invoke.result),
volumes: [{
name: "service-storage",
fsxWindowsFileServerVolumeConfiguration: {
fileSystemId: testAwsFsxWindowsFileSystem.id,
rootDirectory: "\\data",
authorizationConfig: {
credentialsParameter: test.arn,
domain: testAwsDirectoryServiceDirectory.name,
},
},
}],
});
import pulumi
import json
import pulumi_aws as aws
import pulumi_std as std
test = aws.secretsmanager.SecretVersion("test",
secret_id=test_aws_secretsmanager_secret["id"],
secret_string=json.dumps({
"username": "admin",
"password": test_aws_directory_service_directory["password"],
}))
service = aws.ecs.TaskDefinition("service",
family="service",
container_definitions=std.file(input="task-definitions/service.json").result,
volumes=[{
"name": "service-storage",
"fsxWindowsFileServerVolumeConfiguration": {
"fileSystemId": test_aws_fsx_windows_file_system["id"],
"rootDirectory": "\\data",
"authorizationConfig": {
"credentialsParameter": test.arn,
"domain": test_aws_directory_service_directory["name"],
},
},
}])
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/secretsmanager"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
tmpJSON0, err := json.Marshal(map[string]interface{}{
"username": "admin",
"password": testAwsDirectoryServiceDirectory.Password,
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
test, err := secretsmanager.NewSecretVersion(ctx, "test", &secretsmanager.SecretVersionArgs{
SecretId: pulumi.Any(testAwsSecretsmanagerSecret.Id),
SecretString: pulumi.String(json0),
})
if err != nil {
return err
}
invokeFile, err := std.File(ctx, &std.FileArgs{
Input: "task-definitions/service.json",
}, nil)
if err != nil {
return err
}
_, err = ecs.NewTaskDefinition(ctx, "service", &ecs.TaskDefinitionArgs{
Family: pulumi.String("service"),
ContainerDefinitions: invokeFile.Result,
Volumes: ecs.TaskDefinitionVolumeArray{
&ecs.TaskDefinitionVolumeArgs{
Name: pulumi.String("service-storage"),
FsxWindowsFileServerVolumeConfiguration: &ecs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs{
FileSystemId: pulumi.Any(testAwsFsxWindowsFileSystem.Id),
RootDirectory: pulumi.String("\\data"),
AuthorizationConfig: &ecs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs{
CredentialsParameter: test.Arn,
Domain: pulumi.Any(testAwsDirectoryServiceDirectory.Name),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var test = new Aws.SecretsManager.SecretVersion("test", new()
{
SecretId = testAwsSecretsmanagerSecret.Id,
SecretString = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["username"] = "admin",
["password"] = testAwsDirectoryServiceDirectory.Password,
}),
});
var service = new Aws.Ecs.TaskDefinition("service", new()
{
Family = "service",
ContainerDefinitions = Std.File.Invoke(new()
{
Input = "task-definitions/service.json",
}).Apply(invoke => invoke.Result),
Volumes = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionVolumeArgs
{
Name = "service-storage",
FsxWindowsFileServerVolumeConfiguration = new Aws.Ecs.Inputs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs
{
FileSystemId = testAwsFsxWindowsFileSystem.Id,
RootDirectory = "\\data",
AuthorizationConfig = new Aws.Ecs.Inputs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs
{
CredentialsParameter = test.Arn,
Domain = testAwsDirectoryServiceDirectory.Name,
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.secretsmanager.SecretVersion;
import com.pulumi.aws.secretsmanager.SecretVersionArgs;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var test = new SecretVersion("test", SecretVersionArgs.builder()
.secretId(testAwsSecretsmanagerSecret.id())
.secretString(serializeJson(
jsonObject(
jsonProperty("username", "admin"),
jsonProperty("password", testAwsDirectoryServiceDirectory.password())
)))
.build());
var service = new TaskDefinition("service", TaskDefinitionArgs.builder()
.family("service")
.containerDefinitions(StdFunctions.file(FileArgs.builder()
.input("task-definitions/service.json")
.build()).result())
.volumes(TaskDefinitionVolumeArgs.builder()
.name("service-storage")
.fsxWindowsFileServerVolumeConfiguration(TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs.builder()
.fileSystemId(testAwsFsxWindowsFileSystem.id())
.rootDirectory("\\data")
.authorizationConfig(TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs.builder()
.credentialsParameter(test.arn())
.domain(testAwsDirectoryServiceDirectory.name())
.build())
.build())
.build())
.build());
}
}
resources:
service:
type: aws:ecs:TaskDefinition
properties:
family: service
containerDefinitions:
fn::invoke:
Function: std:file
Arguments:
input: task-definitions/service.json
Return: result
volumes:
- name: service-storage
fsxWindowsFileServerVolumeConfiguration:
fileSystemId: ${testAwsFsxWindowsFileSystem.id}
rootDirectory: \data
authorizationConfig:
credentialsParameter: ${test.arn}
domain: ${testAwsDirectoryServiceDirectory.name}
test:
type: aws:secretsmanager:SecretVersion
properties:
secretId: ${testAwsSecretsmanagerSecret.id}
secretString:
fn::toJSON:
username: admin
password: ${testAwsDirectoryServiceDirectory.password}
Example Using container_definitions
and inference_accelerator
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.ecs.TaskDefinition("test", {
family: "test",
containerDefinitions: `[
{
"cpu": 10,
"command": ["sleep", "10"],
"entryPoint": ["/"],
"environment": [
{"name": "VARNAME", "value": "VARVAL"}
],
"essential": true,
"image": "jenkins",
"memory": 128,
"name": "jenkins",
"portMappings": [
{
"containerPort": 80,
"hostPort": 8080
}
],
"resourceRequirements":[
{
"type":"InferenceAccelerator",
"value":"device_1"
}
]
}
]
`,
inferenceAccelerators: [{
deviceName: "device_1",
deviceType: "eia1.medium",
}],
});
import pulumi
import pulumi_aws as aws
test = aws.ecs.TaskDefinition("test",
family="test",
container_definitions="""[
{
"cpu": 10,
"command": ["sleep", "10"],
"entryPoint": ["/"],
"environment": [
{"name": "VARNAME", "value": "VARVAL"}
],
"essential": true,
"image": "jenkins",
"memory": 128,
"name": "jenkins",
"portMappings": [
{
"containerPort": 80,
"hostPort": 8080
}
],
"resourceRequirements":[
{
"type":"InferenceAccelerator",
"value":"device_1"
}
]
}
]
""",
inference_accelerators=[{
"deviceName": "device_1",
"deviceType": "eia1.medium",
}])
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ecs.NewTaskDefinition(ctx, "test", &ecs.TaskDefinitionArgs{
Family: pulumi.String("test"),
ContainerDefinitions: pulumi.String(`[
{
"cpu": 10,
"command": ["sleep", "10"],
"entryPoint": ["/"],
"environment": [
{"name": "VARNAME", "value": "VARVAL"}
],
"essential": true,
"image": "jenkins",
"memory": 128,
"name": "jenkins",
"portMappings": [
{
"containerPort": 80,
"hostPort": 8080
}
],
"resourceRequirements":[
{
"type":"InferenceAccelerator",
"value":"device_1"
}
]
}
]
`),
InferenceAccelerators: ecs.TaskDefinitionInferenceAcceleratorArray{
&ecs.TaskDefinitionInferenceAcceleratorArgs{
DeviceName: pulumi.String("device_1"),
DeviceType: pulumi.String("eia1.medium"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = new Aws.Ecs.TaskDefinition("test", new()
{
Family = "test",
ContainerDefinitions = @"[
{
""cpu"": 10,
""command"": [""sleep"", ""10""],
""entryPoint"": [""/""],
""environment"": [
{""name"": ""VARNAME"", ""value"": ""VARVAL""}
],
""essential"": true,
""image"": ""jenkins"",
""memory"": 128,
""name"": ""jenkins"",
""portMappings"": [
{
""containerPort"": 80,
""hostPort"": 8080
}
],
""resourceRequirements"":[
{
""type"":""InferenceAccelerator"",
""value"":""device_1""
}
]
}
]
",
InferenceAccelerators = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionInferenceAcceleratorArgs
{
DeviceName = "device_1",
DeviceType = "eia1.medium",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionInferenceAcceleratorArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var test = new TaskDefinition("test", TaskDefinitionArgs.builder()
.family("test")
.containerDefinitions("""
[
{
"cpu": 10,
"command": ["sleep", "10"],
"entryPoint": ["/"],
"environment": [
{"name": "VARNAME", "value": "VARVAL"}
],
"essential": true,
"image": "jenkins",
"memory": 128,
"name": "jenkins",
"portMappings": [
{
"containerPort": 80,
"hostPort": 8080
}
],
"resourceRequirements":[
{
"type":"InferenceAccelerator",
"value":"device_1"
}
]
}
]
""")
.inferenceAccelerators(TaskDefinitionInferenceAcceleratorArgs.builder()
.deviceName("device_1")
.deviceType("eia1.medium")
.build())
.build());
}
}
resources:
test:
type: aws:ecs:TaskDefinition
properties:
family: test
containerDefinitions: |
[
{
"cpu": 10,
"command": ["sleep", "10"],
"entryPoint": ["/"],
"environment": [
{"name": "VARNAME", "value": "VARVAL"}
],
"essential": true,
"image": "jenkins",
"memory": 128,
"name": "jenkins",
"portMappings": [
{
"containerPort": 80,
"hostPort": 8080
}
],
"resourceRequirements":[
{
"type":"InferenceAccelerator",
"value":"device_1"
}
]
}
]
inferenceAccelerators:
- deviceName: device_1
deviceType: eia1.medium
Example Using runtime_platform
and fargate
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.ecs.TaskDefinition("test", {
family: "test",
requiresCompatibilities: ["FARGATE"],
networkMode: "awsvpc",
cpu: "1024",
memory: "2048",
containerDefinitions: `[
{
"name": "iis",
"image": "mcr.microsoft.com/windows/servercore/iis",
"cpu": 1024,
"memory": 2048,
"essential": true
}
]
`,
runtimePlatform: {
operatingSystemFamily: "WINDOWS_SERVER_2019_CORE",
cpuArchitecture: "X86_64",
},
});
import pulumi
import pulumi_aws as aws
test = aws.ecs.TaskDefinition("test",
family="test",
requires_compatibilities=["FARGATE"],
network_mode="awsvpc",
cpu="1024",
memory="2048",
container_definitions="""[
{
"name": "iis",
"image": "mcr.microsoft.com/windows/servercore/iis",
"cpu": 1024,
"memory": 2048,
"essential": true
}
]
""",
runtime_platform={
"operatingSystemFamily": "WINDOWS_SERVER_2019_CORE",
"cpuArchitecture": "X86_64",
})
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ecs.NewTaskDefinition(ctx, "test", &ecs.TaskDefinitionArgs{
Family: pulumi.String("test"),
RequiresCompatibilities: pulumi.StringArray{
pulumi.String("FARGATE"),
},
NetworkMode: pulumi.String("awsvpc"),
Cpu: pulumi.String("1024"),
Memory: pulumi.String("2048"),
ContainerDefinitions: pulumi.String(`[
{
"name": "iis",
"image": "mcr.microsoft.com/windows/servercore/iis",
"cpu": 1024,
"memory": 2048,
"essential": true
}
]
`),
RuntimePlatform: &ecs.TaskDefinitionRuntimePlatformArgs{
OperatingSystemFamily: pulumi.String("WINDOWS_SERVER_2019_CORE"),
CpuArchitecture: pulumi.String("X86_64"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = new Aws.Ecs.TaskDefinition("test", new()
{
Family = "test",
RequiresCompatibilities = new[]
{
"FARGATE",
},
NetworkMode = "awsvpc",
Cpu = "1024",
Memory = "2048",
ContainerDefinitions = @"[
{
""name"": ""iis"",
""image"": ""mcr.microsoft.com/windows/servercore/iis"",
""cpu"": 1024,
""memory"": 2048,
""essential"": true
}
]
",
RuntimePlatform = new Aws.Ecs.Inputs.TaskDefinitionRuntimePlatformArgs
{
OperatingSystemFamily = "WINDOWS_SERVER_2019_CORE",
CpuArchitecture = "X86_64",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.TaskDefinition;
import com.pulumi.aws.ecs.TaskDefinitionArgs;
import com.pulumi.aws.ecs.inputs.TaskDefinitionRuntimePlatformArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var test = new TaskDefinition("test", TaskDefinitionArgs.builder()
.family("test")
.requiresCompatibilities("FARGATE")
.networkMode("awsvpc")
.cpu(1024)
.memory(2048)
.containerDefinitions("""
[
{
"name": "iis",
"image": "mcr.microsoft.com/windows/servercore/iis",
"cpu": 1024,
"memory": 2048,
"essential": true
}
]
""")
.runtimePlatform(TaskDefinitionRuntimePlatformArgs.builder()
.operatingSystemFamily("WINDOWS_SERVER_2019_CORE")
.cpuArchitecture("X86_64")
.build())
.build());
}
}
resources:
test:
type: aws:ecs:TaskDefinition
properties:
family: test
requiresCompatibilities:
- FARGATE
networkMode: awsvpc
cpu: 1024
memory: 2048
containerDefinitions: |
[
{
"name": "iis",
"image": "mcr.microsoft.com/windows/servercore/iis",
"cpu": 1024,
"memory": 2048,
"essential": true
}
]
runtimePlatform:
operatingSystemFamily: WINDOWS_SERVER_2019_CORE
cpuArchitecture: X86_64
Create TaskDefinition Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new TaskDefinition(name: string, args: TaskDefinitionArgs, opts?: CustomResourceOptions);
@overload
def TaskDefinition(resource_name: str,
args: TaskDefinitionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def TaskDefinition(resource_name: str,
opts: Optional[ResourceOptions] = None,
family: Optional[str] = None,
container_definitions: Optional[str] = None,
network_mode: Optional[str] = None,
proxy_configuration: Optional[TaskDefinitionProxyConfigurationArgs] = None,
ephemeral_storage: Optional[TaskDefinitionEphemeralStorageArgs] = None,
inference_accelerators: Optional[Sequence[TaskDefinitionInferenceAcceleratorArgs]] = None,
ipc_mode: Optional[str] = None,
memory: Optional[str] = None,
cpu: Optional[str] = None,
pid_mode: Optional[str] = None,
placement_constraints: Optional[Sequence[TaskDefinitionPlacementConstraintArgs]] = None,
execution_role_arn: Optional[str] = None,
requires_compatibilities: Optional[Sequence[str]] = None,
runtime_platform: Optional[TaskDefinitionRuntimePlatformArgs] = None,
skip_destroy: Optional[bool] = None,
tags: Optional[Mapping[str, str]] = None,
task_role_arn: Optional[str] = None,
track_latest: Optional[bool] = None,
volumes: Optional[Sequence[TaskDefinitionVolumeArgs]] = None)
func NewTaskDefinition(ctx *Context, name string, args TaskDefinitionArgs, opts ...ResourceOption) (*TaskDefinition, error)
public TaskDefinition(string name, TaskDefinitionArgs args, CustomResourceOptions? opts = null)
public TaskDefinition(String name, TaskDefinitionArgs args)
public TaskDefinition(String name, TaskDefinitionArgs args, CustomResourceOptions options)
type: aws:ecs:TaskDefinition
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args TaskDefinitionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args TaskDefinitionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args TaskDefinitionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args TaskDefinitionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args TaskDefinitionArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var taskDefinitionResource = new Aws.Ecs.TaskDefinition("taskDefinitionResource", new()
{
Family = "string",
ContainerDefinitions = "string",
NetworkMode = "string",
ProxyConfiguration = new Aws.Ecs.Inputs.TaskDefinitionProxyConfigurationArgs
{
ContainerName = "string",
Properties =
{
{ "string", "string" },
},
Type = "string",
},
EphemeralStorage = new Aws.Ecs.Inputs.TaskDefinitionEphemeralStorageArgs
{
SizeInGib = 0,
},
InferenceAccelerators = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionInferenceAcceleratorArgs
{
DeviceName = "string",
DeviceType = "string",
},
},
IpcMode = "string",
Memory = "string",
Cpu = "string",
PidMode = "string",
PlacementConstraints = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionPlacementConstraintArgs
{
Type = "string",
Expression = "string",
},
},
ExecutionRoleArn = "string",
RequiresCompatibilities = new[]
{
"string",
},
RuntimePlatform = new Aws.Ecs.Inputs.TaskDefinitionRuntimePlatformArgs
{
CpuArchitecture = "string",
OperatingSystemFamily = "string",
},
SkipDestroy = false,
Tags =
{
{ "string", "string" },
},
TaskRoleArn = "string",
TrackLatest = false,
Volumes = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionVolumeArgs
{
Name = "string",
ConfigureAtLaunch = false,
DockerVolumeConfiguration = new Aws.Ecs.Inputs.TaskDefinitionVolumeDockerVolumeConfigurationArgs
{
Autoprovision = false,
Driver = "string",
DriverOpts =
{
{ "string", "string" },
},
Labels =
{
{ "string", "string" },
},
Scope = "string",
},
EfsVolumeConfiguration = new Aws.Ecs.Inputs.TaskDefinitionVolumeEfsVolumeConfigurationArgs
{
FileSystemId = "string",
AuthorizationConfig = new Aws.Ecs.Inputs.TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs
{
AccessPointId = "string",
Iam = "string",
},
RootDirectory = "string",
TransitEncryption = "string",
TransitEncryptionPort = 0,
},
FsxWindowsFileServerVolumeConfiguration = new Aws.Ecs.Inputs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs
{
AuthorizationConfig = new Aws.Ecs.Inputs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs
{
CredentialsParameter = "string",
Domain = "string",
},
FileSystemId = "string",
RootDirectory = "string",
},
HostPath = "string",
},
},
});
example, err := ecs.NewTaskDefinition(ctx, "taskDefinitionResource", &ecs.TaskDefinitionArgs{
Family: pulumi.String("string"),
ContainerDefinitions: pulumi.String("string"),
NetworkMode: pulumi.String("string"),
ProxyConfiguration: &ecs.TaskDefinitionProxyConfigurationArgs{
ContainerName: pulumi.String("string"),
Properties: pulumi.StringMap{
"string": pulumi.String("string"),
},
Type: pulumi.String("string"),
},
EphemeralStorage: &ecs.TaskDefinitionEphemeralStorageArgs{
SizeInGib: pulumi.Int(0),
},
InferenceAccelerators: ecs.TaskDefinitionInferenceAcceleratorArray{
&ecs.TaskDefinitionInferenceAcceleratorArgs{
DeviceName: pulumi.String("string"),
DeviceType: pulumi.String("string"),
},
},
IpcMode: pulumi.String("string"),
Memory: pulumi.String("string"),
Cpu: pulumi.String("string"),
PidMode: pulumi.String("string"),
PlacementConstraints: ecs.TaskDefinitionPlacementConstraintArray{
&ecs.TaskDefinitionPlacementConstraintArgs{
Type: pulumi.String("string"),
Expression: pulumi.String("string"),
},
},
ExecutionRoleArn: pulumi.String("string"),
RequiresCompatibilities: pulumi.StringArray{
pulumi.String("string"),
},
RuntimePlatform: &ecs.TaskDefinitionRuntimePlatformArgs{
CpuArchitecture: pulumi.String("string"),
OperatingSystemFamily: pulumi.String("string"),
},
SkipDestroy: pulumi.Bool(false),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
TaskRoleArn: pulumi.String("string"),
TrackLatest: pulumi.Bool(false),
Volumes: ecs.TaskDefinitionVolumeArray{
&ecs.TaskDefinitionVolumeArgs{
Name: pulumi.String("string"),
ConfigureAtLaunch: pulumi.Bool(false),
DockerVolumeConfiguration: &ecs.TaskDefinitionVolumeDockerVolumeConfigurationArgs{
Autoprovision: pulumi.Bool(false),
Driver: pulumi.String("string"),
DriverOpts: pulumi.StringMap{
"string": pulumi.String("string"),
},
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Scope: pulumi.String("string"),
},
EfsVolumeConfiguration: &ecs.TaskDefinitionVolumeEfsVolumeConfigurationArgs{
FileSystemId: pulumi.String("string"),
AuthorizationConfig: &ecs.TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs{
AccessPointId: pulumi.String("string"),
Iam: pulumi.String("string"),
},
RootDirectory: pulumi.String("string"),
TransitEncryption: pulumi.String("string"),
TransitEncryptionPort: pulumi.Int(0),
},
FsxWindowsFileServerVolumeConfiguration: &ecs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs{
AuthorizationConfig: &ecs.TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs{
CredentialsParameter: pulumi.String("string"),
Domain: pulumi.String("string"),
},
FileSystemId: pulumi.String("string"),
RootDirectory: pulumi.String("string"),
},
HostPath: pulumi.String("string"),
},
},
})
var taskDefinitionResource = new TaskDefinition("taskDefinitionResource", TaskDefinitionArgs.builder()
.family("string")
.containerDefinitions("string")
.networkMode("string")
.proxyConfiguration(TaskDefinitionProxyConfigurationArgs.builder()
.containerName("string")
.properties(Map.of("string", "string"))
.type("string")
.build())
.ephemeralStorage(TaskDefinitionEphemeralStorageArgs.builder()
.sizeInGib(0)
.build())
.inferenceAccelerators(TaskDefinitionInferenceAcceleratorArgs.builder()
.deviceName("string")
.deviceType("string")
.build())
.ipcMode("string")
.memory("string")
.cpu("string")
.pidMode("string")
.placementConstraints(TaskDefinitionPlacementConstraintArgs.builder()
.type("string")
.expression("string")
.build())
.executionRoleArn("string")
.requiresCompatibilities("string")
.runtimePlatform(TaskDefinitionRuntimePlatformArgs.builder()
.cpuArchitecture("string")
.operatingSystemFamily("string")
.build())
.skipDestroy(false)
.tags(Map.of("string", "string"))
.taskRoleArn("string")
.trackLatest(false)
.volumes(TaskDefinitionVolumeArgs.builder()
.name("string")
.configureAtLaunch(false)
.dockerVolumeConfiguration(TaskDefinitionVolumeDockerVolumeConfigurationArgs.builder()
.autoprovision(false)
.driver("string")
.driverOpts(Map.of("string", "string"))
.labels(Map.of("string", "string"))
.scope("string")
.build())
.efsVolumeConfiguration(TaskDefinitionVolumeEfsVolumeConfigurationArgs.builder()
.fileSystemId("string")
.authorizationConfig(TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs.builder()
.accessPointId("string")
.iam("string")
.build())
.rootDirectory("string")
.transitEncryption("string")
.transitEncryptionPort(0)
.build())
.fsxWindowsFileServerVolumeConfiguration(TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs.builder()
.authorizationConfig(TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs.builder()
.credentialsParameter("string")
.domain("string")
.build())
.fileSystemId("string")
.rootDirectory("string")
.build())
.hostPath("string")
.build())
.build());
task_definition_resource = aws.ecs.TaskDefinition("taskDefinitionResource",
family="string",
container_definitions="string",
network_mode="string",
proxy_configuration={
"containerName": "string",
"properties": {
"string": "string",
},
"type": "string",
},
ephemeral_storage={
"sizeInGib": 0,
},
inference_accelerators=[{
"deviceName": "string",
"deviceType": "string",
}],
ipc_mode="string",
memory="string",
cpu="string",
pid_mode="string",
placement_constraints=[{
"type": "string",
"expression": "string",
}],
execution_role_arn="string",
requires_compatibilities=["string"],
runtime_platform={
"cpuArchitecture": "string",
"operatingSystemFamily": "string",
},
skip_destroy=False,
tags={
"string": "string",
},
task_role_arn="string",
track_latest=False,
volumes=[{
"name": "string",
"configureAtLaunch": False,
"dockerVolumeConfiguration": {
"autoprovision": False,
"driver": "string",
"driverOpts": {
"string": "string",
},
"labels": {
"string": "string",
},
"scope": "string",
},
"efsVolumeConfiguration": {
"fileSystemId": "string",
"authorizationConfig": {
"accessPointId": "string",
"iam": "string",
},
"rootDirectory": "string",
"transitEncryption": "string",
"transitEncryptionPort": 0,
},
"fsxWindowsFileServerVolumeConfiguration": {
"authorizationConfig": {
"credentialsParameter": "string",
"domain": "string",
},
"fileSystemId": "string",
"rootDirectory": "string",
},
"hostPath": "string",
}])
const taskDefinitionResource = new aws.ecs.TaskDefinition("taskDefinitionResource", {
family: "string",
containerDefinitions: "string",
networkMode: "string",
proxyConfiguration: {
containerName: "string",
properties: {
string: "string",
},
type: "string",
},
ephemeralStorage: {
sizeInGib: 0,
},
inferenceAccelerators: [{
deviceName: "string",
deviceType: "string",
}],
ipcMode: "string",
memory: "string",
cpu: "string",
pidMode: "string",
placementConstraints: [{
type: "string",
expression: "string",
}],
executionRoleArn: "string",
requiresCompatibilities: ["string"],
runtimePlatform: {
cpuArchitecture: "string",
operatingSystemFamily: "string",
},
skipDestroy: false,
tags: {
string: "string",
},
taskRoleArn: "string",
trackLatest: false,
volumes: [{
name: "string",
configureAtLaunch: false,
dockerVolumeConfiguration: {
autoprovision: false,
driver: "string",
driverOpts: {
string: "string",
},
labels: {
string: "string",
},
scope: "string",
},
efsVolumeConfiguration: {
fileSystemId: "string",
authorizationConfig: {
accessPointId: "string",
iam: "string",
},
rootDirectory: "string",
transitEncryption: "string",
transitEncryptionPort: 0,
},
fsxWindowsFileServerVolumeConfiguration: {
authorizationConfig: {
credentialsParameter: "string",
domain: "string",
},
fileSystemId: "string",
rootDirectory: "string",
},
hostPath: "string",
}],
});
type: aws:ecs:TaskDefinition
properties:
containerDefinitions: string
cpu: string
ephemeralStorage:
sizeInGib: 0
executionRoleArn: string
family: string
inferenceAccelerators:
- deviceName: string
deviceType: string
ipcMode: string
memory: string
networkMode: string
pidMode: string
placementConstraints:
- expression: string
type: string
proxyConfiguration:
containerName: string
properties:
string: string
type: string
requiresCompatibilities:
- string
runtimePlatform:
cpuArchitecture: string
operatingSystemFamily: string
skipDestroy: false
tags:
string: string
taskRoleArn: string
trackLatest: false
volumes:
- configureAtLaunch: false
dockerVolumeConfiguration:
autoprovision: false
driver: string
driverOpts:
string: string
labels:
string: string
scope: string
efsVolumeConfiguration:
authorizationConfig:
accessPointId: string
iam: string
fileSystemId: string
rootDirectory: string
transitEncryption: string
transitEncryptionPort: 0
fsxWindowsFileServerVolumeConfiguration:
authorizationConfig:
credentialsParameter: string
domain: string
fileSystemId: string
rootDirectory: string
hostPath: string
name: string
TaskDefinition Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The TaskDefinition resource accepts the following input properties:
- Container
Definitions string - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- Family string
A unique name for your task definition.
The following arguments are optional:
- Cpu string
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Ephemeral
Storage TaskDefinition Ephemeral Storage - 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.
- Execution
Role stringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- Inference
Accelerators List<TaskDefinition Inference Accelerator> - Configuration block(s) with Inference Accelerators settings. Detailed below.
- Ipc
Mode string - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - Memory string
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Network
Mode string - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - Pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - Placement
Constraints List<TaskDefinition Placement Constraint> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - Proxy
Configuration TaskDefinition Proxy Configuration - Configuration block for the App Mesh proxy. Detailed below.
- Requires
Compatibilities List<string> - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - Runtime
Platform TaskDefinition Runtime Platform - Configuration block for runtime_platform that containers in your task may use.
- Skip
Destroy bool - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Dictionary<string, 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. - Task
Role stringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- Track
Latest bool - Whether should track latest task definition or the one created with the resource. Default is
false
. - Volumes
List<Task
Definition Volume> - Configuration block for volumes that containers in your task may use. Detailed below.
- Container
Definitions string - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- Family string
A unique name for your task definition.
The following arguments are optional:
- Cpu string
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Ephemeral
Storage TaskDefinition Ephemeral Storage Args - 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.
- Execution
Role stringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- Inference
Accelerators []TaskDefinition Inference Accelerator Args - Configuration block(s) with Inference Accelerators settings. Detailed below.
- Ipc
Mode string - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - Memory string
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Network
Mode string - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - Pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - Placement
Constraints []TaskDefinition Placement Constraint Args - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - Proxy
Configuration TaskDefinition Proxy Configuration Args - Configuration block for the App Mesh proxy. Detailed below.
- Requires
Compatibilities []string - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - Runtime
Platform TaskDefinition Runtime Platform Args - Configuration block for runtime_platform that containers in your task may use.
- Skip
Destroy bool - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - map[string]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. - Task
Role stringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- Track
Latest bool - Whether should track latest task definition or the one created with the resource. Default is
false
. - Volumes
[]Task
Definition Volume Args - Configuration block for volumes that containers in your task may use. Detailed below.
- container
Definitions String - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- family String
A unique name for your task definition.
The following arguments are optional:
- cpu String
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral
Storage TaskDefinition Ephemeral Storage - 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.
- execution
Role StringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- inference
Accelerators List<TaskDefinition Inference Accelerator> - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc
Mode String - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory String
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network
Mode String - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid
Mode String - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints List<TaskDefinition Placement Constraint> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration TaskDefinition Proxy Configuration - Configuration block for the App Mesh proxy. Detailed below.
- requires
Compatibilities List<String> - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - runtime
Platform TaskDefinition Runtime Platform - Configuration block for runtime_platform that containers in your task may use.
- skip
Destroy Boolean - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Map<String,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. - task
Role StringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track
Latest Boolean - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes
List<Task
Definition Volume> - Configuration block for volumes that containers in your task may use. Detailed below.
- container
Definitions string - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- family string
A unique name for your task definition.
The following arguments are optional:
- cpu string
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral
Storage TaskDefinition Ephemeral Storage - 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.
- execution
Role stringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- inference
Accelerators TaskDefinition Inference Accelerator[] - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc
Mode string - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory string
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network
Mode string - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints TaskDefinition Placement Constraint[] - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration TaskDefinition Proxy Configuration - Configuration block for the App Mesh proxy. Detailed below.
- requires
Compatibilities string[] - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - runtime
Platform TaskDefinition Runtime Platform - Configuration block for runtime_platform that containers in your task may use.
- skip
Destroy boolean - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - {[key: string]: 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. - task
Role stringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track
Latest boolean - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes
Task
Definition Volume[] - Configuration block for volumes that containers in your task may use. Detailed below.
- container_
definitions str - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- family str
A unique name for your task definition.
The following arguments are optional:
- cpu str
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral_
storage TaskDefinition Ephemeral Storage Args - 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.
- execution_
role_ strarn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- inference_
accelerators Sequence[TaskDefinition Inference Accelerator Args] - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc_
mode str - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory str
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network_
mode str - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid_
mode str - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement_
constraints Sequence[TaskDefinition Placement Constraint Args] - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy_
configuration TaskDefinition Proxy Configuration Args - Configuration block for the App Mesh proxy. Detailed below.
- requires_
compatibilities Sequence[str] - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - runtime_
platform TaskDefinition Runtime Platform Args - Configuration block for runtime_platform that containers in your task may use.
- skip_
destroy bool - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Mapping[str, str]
- 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. - task_
role_ strarn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track_
latest bool - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes
Sequence[Task
Definition Volume Args] - Configuration block for volumes that containers in your task may use. Detailed below.
- container
Definitions String - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- family String
A unique name for your task definition.
The following arguments are optional:
- cpu String
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral
Storage Property Map - 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.
- execution
Role StringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- inference
Accelerators List<Property Map> - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc
Mode String - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory String
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network
Mode String - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid
Mode String - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints List<Property Map> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration Property Map - Configuration block for the App Mesh proxy. Detailed below.
- requires
Compatibilities List<String> - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - runtime
Platform Property Map - Configuration block for runtime_platform that containers in your task may use.
- skip
Destroy Boolean - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Map<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. - task
Role StringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track
Latest Boolean - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes List<Property Map>
- Configuration block for volumes that containers in your task may use. Detailed below.
Outputs
All input properties are implicitly available as output properties. Additionally, the TaskDefinition resource produces the following output properties:
- Arn string
- Full ARN of the Task Definition (including both
family
andrevision
). - Arn
Without stringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - Id string
- The provider-assigned unique ID for this managed resource.
- Revision int
- Revision of the task in a particular family.
- Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Arn string
- Full ARN of the Task Definition (including both
family
andrevision
). - Arn
Without stringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - Id string
- The provider-assigned unique ID for this managed resource.
- Revision int
- Revision of the task in a particular family.
- map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- Full ARN of the Task Definition (including both
family
andrevision
). - arn
Without StringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - id String
- The provider-assigned unique ID for this managed resource.
- revision Integer
- Revision of the task in a particular family.
- Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn string
- Full ARN of the Task Definition (including both
family
andrevision
). - arn
Without stringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - id string
- The provider-assigned unique ID for this managed resource.
- revision number
- Revision of the task in a particular family.
- {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn str
- Full ARN of the Task Definition (including both
family
andrevision
). - arn_
without_ strrevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - id str
- The provider-assigned unique ID for this managed resource.
- revision int
- Revision of the task in a particular family.
- Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- arn String
- Full ARN of the Task Definition (including both
family
andrevision
). - arn
Without StringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - id String
- The provider-assigned unique ID for this managed resource.
- revision Number
- Revision of the task in a particular family.
- Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Look up Existing TaskDefinition Resource
Get an existing TaskDefinition resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: TaskDefinitionState, opts?: CustomResourceOptions): TaskDefinition
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
arn_without_revision: Optional[str] = None,
container_definitions: Optional[str] = None,
cpu: Optional[str] = None,
ephemeral_storage: Optional[TaskDefinitionEphemeralStorageArgs] = None,
execution_role_arn: Optional[str] = None,
family: Optional[str] = None,
inference_accelerators: Optional[Sequence[TaskDefinitionInferenceAcceleratorArgs]] = None,
ipc_mode: Optional[str] = None,
memory: Optional[str] = None,
network_mode: Optional[str] = None,
pid_mode: Optional[str] = None,
placement_constraints: Optional[Sequence[TaskDefinitionPlacementConstraintArgs]] = None,
proxy_configuration: Optional[TaskDefinitionProxyConfigurationArgs] = None,
requires_compatibilities: Optional[Sequence[str]] = None,
revision: Optional[int] = None,
runtime_platform: Optional[TaskDefinitionRuntimePlatformArgs] = None,
skip_destroy: Optional[bool] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
task_role_arn: Optional[str] = None,
track_latest: Optional[bool] = None,
volumes: Optional[Sequence[TaskDefinitionVolumeArgs]] = None) -> TaskDefinition
func GetTaskDefinition(ctx *Context, name string, id IDInput, state *TaskDefinitionState, opts ...ResourceOption) (*TaskDefinition, error)
public static TaskDefinition Get(string name, Input<string> id, TaskDefinitionState? state, CustomResourceOptions? opts = null)
public static TaskDefinition get(String name, Output<String> id, TaskDefinitionState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- Full ARN of the Task Definition (including both
family
andrevision
). - Arn
Without stringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - Container
Definitions string - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- Cpu string
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Ephemeral
Storage TaskDefinition Ephemeral Storage - 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.
- Execution
Role stringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- Family string
A unique name for your task definition.
The following arguments are optional:
- Inference
Accelerators List<TaskDefinition Inference Accelerator> - Configuration block(s) with Inference Accelerators settings. Detailed below.
- Ipc
Mode string - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - Memory string
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Network
Mode string - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - Pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - Placement
Constraints List<TaskDefinition Placement Constraint> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - Proxy
Configuration TaskDefinition Proxy Configuration - Configuration block for the App Mesh proxy. Detailed below.
- Requires
Compatibilities List<string> - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - Revision int
- Revision of the task in a particular family.
- Runtime
Platform TaskDefinition Runtime Platform - Configuration block for runtime_platform that containers in your task may use.
- Skip
Destroy bool - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Dictionary<string, 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. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - Task
Role stringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- Track
Latest bool - Whether should track latest task definition or the one created with the resource. Default is
false
. - Volumes
List<Task
Definition Volume> - Configuration block for volumes that containers in your task may use. Detailed below.
- Arn string
- Full ARN of the Task Definition (including both
family
andrevision
). - Arn
Without stringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - Container
Definitions string - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- Cpu string
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Ephemeral
Storage TaskDefinition Ephemeral Storage Args - 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.
- Execution
Role stringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- Family string
A unique name for your task definition.
The following arguments are optional:
- Inference
Accelerators []TaskDefinition Inference Accelerator Args - Configuration block(s) with Inference Accelerators settings. Detailed below.
- Ipc
Mode string - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - Memory string
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - Network
Mode string - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - Pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - Placement
Constraints []TaskDefinition Placement Constraint Args - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - Proxy
Configuration TaskDefinition Proxy Configuration Args - Configuration block for the App Mesh proxy. Detailed below.
- Requires
Compatibilities []string - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - Revision int
- Revision of the task in a particular family.
- Runtime
Platform TaskDefinition Runtime Platform Args - Configuration block for runtime_platform that containers in your task may use.
- Skip
Destroy bool - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - map[string]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. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - Task
Role stringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- Track
Latest bool - Whether should track latest task definition or the one created with the resource. Default is
false
. - Volumes
[]Task
Definition Volume Args - Configuration block for volumes that containers in your task may use. Detailed below.
- arn String
- Full ARN of the Task Definition (including both
family
andrevision
). - arn
Without StringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - container
Definitions String - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- cpu String
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral
Storage TaskDefinition Ephemeral Storage - 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.
- execution
Role StringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- family String
A unique name for your task definition.
The following arguments are optional:
- inference
Accelerators List<TaskDefinition Inference Accelerator> - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc
Mode String - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory String
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network
Mode String - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid
Mode String - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints List<TaskDefinition Placement Constraint> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration TaskDefinition Proxy Configuration - Configuration block for the App Mesh proxy. Detailed below.
- requires
Compatibilities List<String> - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - revision Integer
- Revision of the task in a particular family.
- runtime
Platform TaskDefinition Runtime Platform - Configuration block for runtime_platform that containers in your task may use.
- skip
Destroy Boolean - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Map<String,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. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - task
Role StringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track
Latest Boolean - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes
List<Task
Definition Volume> - Configuration block for volumes that containers in your task may use. Detailed below.
- arn string
- Full ARN of the Task Definition (including both
family
andrevision
). - arn
Without stringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - container
Definitions string - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- cpu string
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral
Storage TaskDefinition Ephemeral Storage - 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.
- execution
Role stringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- family string
A unique name for your task definition.
The following arguments are optional:
- inference
Accelerators TaskDefinition Inference Accelerator[] - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc
Mode string - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory string
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network
Mode string - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints TaskDefinition Placement Constraint[] - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration TaskDefinition Proxy Configuration - Configuration block for the App Mesh proxy. Detailed below.
- requires
Compatibilities string[] - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - revision number
- Revision of the task in a particular family.
- runtime
Platform TaskDefinition Runtime Platform - Configuration block for runtime_platform that containers in your task may use.
- skip
Destroy boolean - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - {[key: string]: 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. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - task
Role stringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track
Latest boolean - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes
Task
Definition Volume[] - Configuration block for volumes that containers in your task may use. Detailed below.
- arn str
- Full ARN of the Task Definition (including both
family
andrevision
). - arn_
without_ strrevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - container_
definitions str - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- cpu str
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral_
storage TaskDefinition Ephemeral Storage Args - 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.
- execution_
role_ strarn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- family str
A unique name for your task definition.
The following arguments are optional:
- inference_
accelerators Sequence[TaskDefinition Inference Accelerator Args] - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc_
mode str - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory str
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network_
mode str - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid_
mode str - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement_
constraints Sequence[TaskDefinition Placement Constraint Args] - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy_
configuration TaskDefinition Proxy Configuration Args - Configuration block for the App Mesh proxy. Detailed below.
- requires_
compatibilities Sequence[str] - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - revision int
- Revision of the task in a particular family.
- runtime_
platform TaskDefinition Runtime Platform Args - Configuration block for runtime_platform that containers in your task may use.
- skip_
destroy bool - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Mapping[str, str]
- 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. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - task_
role_ strarn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track_
latest bool - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes
Sequence[Task
Definition Volume Args] - Configuration block for volumes that containers in your task may use. Detailed below.
- arn String
- Full ARN of the Task Definition (including both
family
andrevision
). - arn
Without StringRevision - ARN of the Task Definition with the trailing
revision
removed. This may be useful for situations where the latest task definition is always desired. If a revision isn't specified, the latest ACTIVE revision is used. See the AWS documentation for details. - container
Definitions String - A list of valid container definitions provided as a single valid JSON document. Please note that you should only provide values that are part of the container definition document. For a detailed description of what parameters are available, see the Task Definition Parameters section from the official Developer Guide.
- cpu String
- Number of cpu units used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - ephemeral
Storage Property Map - 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.
- execution
Role StringArn - ARN of the task execution role that the Amazon ECS container agent and the Docker daemon can assume.
- family String
A unique name for your task definition.
The following arguments are optional:
- inference
Accelerators List<Property Map> - Configuration block(s) with Inference Accelerators settings. Detailed below.
- ipc
Mode String - IPC resource namespace to be used for the containers in the task The valid values are
host
,task
, andnone
. - memory String
- Amount (in MiB) of memory used by the task. If the
requires_compatibilities
isFARGATE
this field is required. - network
Mode String - Docker networking mode to use for the containers in the task. Valid values are
none
,bridge
,awsvpc
, andhost
. - pid
Mode String - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints List<Property Map> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration Property Map - Configuration block for the App Mesh proxy. Detailed below.
- requires
Compatibilities List<String> - Set of launch types required by the task. The valid values are
EC2
andFARGATE
. - revision Number
- Revision of the task in a particular family.
- runtime
Platform Property Map - Configuration block for runtime_platform that containers in your task may use.
- skip
Destroy Boolean - Whether to retain the old revision when the resource is destroyed or replacement is necessary. Default is
false
. - Map<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. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - task
Role StringArn - ARN of IAM role that allows your Amazon ECS container task to make calls to other AWS services.
- track
Latest Boolean - Whether should track latest task definition or the one created with the resource. Default is
false
. - volumes List<Property Map>
- Configuration block for volumes that containers in your task may use. Detailed below.
Supporting Types
TaskDefinitionEphemeralStorage, TaskDefinitionEphemeralStorageArgs
- Size
In intGib - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is
21
GiB and the maximum supported value is200
GiB.
- Size
In intGib - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is
21
GiB and the maximum supported value is200
GiB.
- size
In IntegerGib - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is
21
GiB and the maximum supported value is200
GiB.
- size
In numberGib - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is
21
GiB and the maximum supported value is200
GiB.
- size_
in_ intgib - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is
21
GiB and the maximum supported value is200
GiB.
- size
In NumberGib - The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is
21
GiB and the maximum supported value is200
GiB.
TaskDefinitionInferenceAccelerator, TaskDefinitionInferenceAcceleratorArgs
- Device
Name string - Elastic Inference accelerator device name. The deviceName must also be referenced in a container definition as a ResourceRequirement.
- Device
Type string - Elastic Inference accelerator type to use.
- Device
Name string - Elastic Inference accelerator device name. The deviceName must also be referenced in a container definition as a ResourceRequirement.
- Device
Type string - Elastic Inference accelerator type to use.
- device
Name String - Elastic Inference accelerator device name. The deviceName must also be referenced in a container definition as a ResourceRequirement.
- device
Type String - Elastic Inference accelerator type to use.
- device
Name string - Elastic Inference accelerator device name. The deviceName must also be referenced in a container definition as a ResourceRequirement.
- device
Type string - Elastic Inference accelerator type to use.
- device_
name str - Elastic Inference accelerator device name. The deviceName must also be referenced in a container definition as a ResourceRequirement.
- device_
type str - Elastic Inference accelerator type to use.
- device
Name String - Elastic Inference accelerator device name. The deviceName must also be referenced in a container definition as a ResourceRequirement.
- device
Type String - Elastic Inference accelerator type to use.
TaskDefinitionPlacementConstraint, TaskDefinitionPlacementConstraintArgs
- Type string
- Type of constraint. Use
memberOf
to restrict selection to a group of valid candidates. Note thatdistinctInstance
is not supported in task definitions. - Expression string
- Cluster Query Language expression to apply to the constraint. For more information, see Cluster Query Language in the Amazon EC2 Container Service Developer Guide.
- Type string
- Type of constraint. Use
memberOf
to restrict selection to a group of valid candidates. Note thatdistinctInstance
is not supported in task definitions. - Expression string
- Cluster Query Language expression to apply to the constraint. For more information, see Cluster Query Language in the Amazon EC2 Container Service Developer Guide.
- type String
- Type of constraint. Use
memberOf
to restrict selection to a group of valid candidates. Note thatdistinctInstance
is not supported in task definitions. - expression String
- Cluster Query Language expression to apply to the constraint. For more information, see Cluster Query Language in the Amazon EC2 Container Service Developer Guide.
- type string
- Type of constraint. Use
memberOf
to restrict selection to a group of valid candidates. Note thatdistinctInstance
is not supported in task definitions. - expression string
- Cluster Query Language expression to apply to the constraint. For more information, see Cluster Query Language in the Amazon EC2 Container Service Developer Guide.
- type str
- Type of constraint. Use
memberOf
to restrict selection to a group of valid candidates. Note thatdistinctInstance
is not supported in task definitions. - expression str
- Cluster Query Language expression to apply to the constraint. For more information, see Cluster Query Language in the Amazon EC2 Container Service Developer Guide.
- type String
- Type of constraint. Use
memberOf
to restrict selection to a group of valid candidates. Note thatdistinctInstance
is not supported in task definitions. - expression String
- Cluster Query Language expression to apply to the constraint. For more information, see Cluster Query Language in the Amazon EC2 Container Service Developer Guide.
TaskDefinitionProxyConfiguration, TaskDefinitionProxyConfigurationArgs
- Container
Name string - Name of the container that will serve as the App Mesh proxy.
- Properties Dictionary<string, string>
- Set of network configuration parameters to provide the Container Network Interface (CNI) plugin, specified a key-value mapping.
- Type string
- Proxy type. The default value is
APPMESH
. The only supported value isAPPMESH
.
- Container
Name string - Name of the container that will serve as the App Mesh proxy.
- Properties map[string]string
- Set of network configuration parameters to provide the Container Network Interface (CNI) plugin, specified a key-value mapping.
- Type string
- Proxy type. The default value is
APPMESH
. The only supported value isAPPMESH
.
- container
Name String - Name of the container that will serve as the App Mesh proxy.
- properties Map<String,String>
- Set of network configuration parameters to provide the Container Network Interface (CNI) plugin, specified a key-value mapping.
- type String
- Proxy type. The default value is
APPMESH
. The only supported value isAPPMESH
.
- container
Name string - Name of the container that will serve as the App Mesh proxy.
- properties {[key: string]: string}
- Set of network configuration parameters to provide the Container Network Interface (CNI) plugin, specified a key-value mapping.
- type string
- Proxy type. The default value is
APPMESH
. The only supported value isAPPMESH
.
- container_
name str - Name of the container that will serve as the App Mesh proxy.
- properties Mapping[str, str]
- Set of network configuration parameters to provide the Container Network Interface (CNI) plugin, specified a key-value mapping.
- type str
- Proxy type. The default value is
APPMESH
. The only supported value isAPPMESH
.
- container
Name String - Name of the container that will serve as the App Mesh proxy.
- properties Map<String>
- Set of network configuration parameters to provide the Container Network Interface (CNI) plugin, specified a key-value mapping.
- type String
- Proxy type. The default value is
APPMESH
. The only supported value isAPPMESH
.
TaskDefinitionRuntimePlatform, TaskDefinitionRuntimePlatformArgs
- Cpu
Architecture string - Must be set to either
X86_64
orARM64
; see cpu architecture - Operating
System stringFamily - If the
requires_compatibilities
isFARGATE
this field is required; must be set to a valid option from the operating system family in the runtime platform setting
- Cpu
Architecture string - Must be set to either
X86_64
orARM64
; see cpu architecture - Operating
System stringFamily - If the
requires_compatibilities
isFARGATE
this field is required; must be set to a valid option from the operating system family in the runtime platform setting
- cpu
Architecture String - Must be set to either
X86_64
orARM64
; see cpu architecture - operating
System StringFamily - If the
requires_compatibilities
isFARGATE
this field is required; must be set to a valid option from the operating system family in the runtime platform setting
- cpu
Architecture string - Must be set to either
X86_64
orARM64
; see cpu architecture - operating
System stringFamily - If the
requires_compatibilities
isFARGATE
this field is required; must be set to a valid option from the operating system family in the runtime platform setting
- cpu_
architecture str - Must be set to either
X86_64
orARM64
; see cpu architecture - operating_
system_ strfamily - If the
requires_compatibilities
isFARGATE
this field is required; must be set to a valid option from the operating system family in the runtime platform setting
- cpu
Architecture String - Must be set to either
X86_64
orARM64
; see cpu architecture - operating
System StringFamily - If the
requires_compatibilities
isFARGATE
this field is required; must be set to a valid option from the operating system family in the runtime platform setting
TaskDefinitionVolume, TaskDefinitionVolumeArgs
- Name string
- Name of the volume. This name is referenced in the
sourceVolume
parameter of container definition in themountPoints
section. - Configure
At boolLaunch - Whether the volume should be configured at launch time. This is used to create Amazon EBS volumes for standalone tasks or tasks created as part of a service. Each task definition revision may only have one volume configured at launch in the volume configuration.
- Docker
Volume TaskConfiguration Definition Volume Docker Volume Configuration - Configuration block to configure a docker volume. Detailed below.
- Efs
Volume TaskConfiguration Definition Volume Efs Volume Configuration - Configuration block for an EFS volume. Detailed below.
- Fsx
Windows TaskFile Server Volume Configuration Definition Volume Fsx Windows File Server Volume Configuration - Configuration block for an FSX Windows File Server volume. Detailed below.
- Host
Path string - Path on the host container instance that is presented to the container. If not set, ECS will create a nonpersistent data volume that starts empty and is deleted after the task has finished.
- Name string
- Name of the volume. This name is referenced in the
sourceVolume
parameter of container definition in themountPoints
section. - Configure
At boolLaunch - Whether the volume should be configured at launch time. This is used to create Amazon EBS volumes for standalone tasks or tasks created as part of a service. Each task definition revision may only have one volume configured at launch in the volume configuration.
- Docker
Volume TaskConfiguration Definition Volume Docker Volume Configuration - Configuration block to configure a docker volume. Detailed below.
- Efs
Volume TaskConfiguration Definition Volume Efs Volume Configuration - Configuration block for an EFS volume. Detailed below.
- Fsx
Windows TaskFile Server Volume Configuration Definition Volume Fsx Windows File Server Volume Configuration - Configuration block for an FSX Windows File Server volume. Detailed below.
- Host
Path string - Path on the host container instance that is presented to the container. If not set, ECS will create a nonpersistent data volume that starts empty and is deleted after the task has finished.
- name String
- Name of the volume. This name is referenced in the
sourceVolume
parameter of container definition in themountPoints
section. - configure
At BooleanLaunch - Whether the volume should be configured at launch time. This is used to create Amazon EBS volumes for standalone tasks or tasks created as part of a service. Each task definition revision may only have one volume configured at launch in the volume configuration.
- docker
Volume TaskConfiguration Definition Volume Docker Volume Configuration - Configuration block to configure a docker volume. Detailed below.
- efs
Volume TaskConfiguration Definition Volume Efs Volume Configuration - Configuration block for an EFS volume. Detailed below.
- fsx
Windows TaskFile Server Volume Configuration Definition Volume Fsx Windows File Server Volume Configuration - Configuration block for an FSX Windows File Server volume. Detailed below.
- host
Path String - Path on the host container instance that is presented to the container. If not set, ECS will create a nonpersistent data volume that starts empty and is deleted after the task has finished.
- name string
- Name of the volume. This name is referenced in the
sourceVolume
parameter of container definition in themountPoints
section. - configure
At booleanLaunch - Whether the volume should be configured at launch time. This is used to create Amazon EBS volumes for standalone tasks or tasks created as part of a service. Each task definition revision may only have one volume configured at launch in the volume configuration.
- docker
Volume TaskConfiguration Definition Volume Docker Volume Configuration - Configuration block to configure a docker volume. Detailed below.
- efs
Volume TaskConfiguration Definition Volume Efs Volume Configuration - Configuration block for an EFS volume. Detailed below.
- fsx
Windows TaskFile Server Volume Configuration Definition Volume Fsx Windows File Server Volume Configuration - Configuration block for an FSX Windows File Server volume. Detailed below.
- host
Path string - Path on the host container instance that is presented to the container. If not set, ECS will create a nonpersistent data volume that starts empty and is deleted after the task has finished.
- name str
- Name of the volume. This name is referenced in the
sourceVolume
parameter of container definition in themountPoints
section. - configure_
at_ boollaunch - Whether the volume should be configured at launch time. This is used to create Amazon EBS volumes for standalone tasks or tasks created as part of a service. Each task definition revision may only have one volume configured at launch in the volume configuration.
- docker_
volume_ Taskconfiguration Definition Volume Docker Volume Configuration - Configuration block to configure a docker volume. Detailed below.
- efs_
volume_ Taskconfiguration Definition Volume Efs Volume Configuration - Configuration block for an EFS volume. Detailed below.
- fsx_
windows_ Taskfile_ server_ volume_ configuration Definition Volume Fsx Windows File Server Volume Configuration - Configuration block for an FSX Windows File Server volume. Detailed below.
- host_
path str - Path on the host container instance that is presented to the container. If not set, ECS will create a nonpersistent data volume that starts empty and is deleted after the task has finished.
- name String
- Name of the volume. This name is referenced in the
sourceVolume
parameter of container definition in themountPoints
section. - configure
At BooleanLaunch - Whether the volume should be configured at launch time. This is used to create Amazon EBS volumes for standalone tasks or tasks created as part of a service. Each task definition revision may only have one volume configured at launch in the volume configuration.
- docker
Volume Property MapConfiguration - Configuration block to configure a docker volume. Detailed below.
- efs
Volume Property MapConfiguration - Configuration block for an EFS volume. Detailed below.
- fsx
Windows Property MapFile Server Volume Configuration - Configuration block for an FSX Windows File Server volume. Detailed below.
- host
Path String - Path on the host container instance that is presented to the container. If not set, ECS will create a nonpersistent data volume that starts empty and is deleted after the task has finished.
TaskDefinitionVolumeDockerVolumeConfiguration, TaskDefinitionVolumeDockerVolumeConfigurationArgs
- Autoprovision bool
- If this value is
true
, the Docker volume is created if it does not already exist. Note: This field is only used if the scope isshared
. - Driver string
- Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement.
- Driver
Opts Dictionary<string, string> - Map of Docker driver specific options.
- Labels Dictionary<string, string>
- Map of custom metadata to add to your Docker volume.
- Scope string
- Scope for the Docker volume, which determines its lifecycle, either
task
orshared
. Docker volumes that are scoped to atask
are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped asshared
persist after the task stops.
- Autoprovision bool
- If this value is
true
, the Docker volume is created if it does not already exist. Note: This field is only used if the scope isshared
. - Driver string
- Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement.
- Driver
Opts map[string]string - Map of Docker driver specific options.
- Labels map[string]string
- Map of custom metadata to add to your Docker volume.
- Scope string
- Scope for the Docker volume, which determines its lifecycle, either
task
orshared
. Docker volumes that are scoped to atask
are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped asshared
persist after the task stops.
- autoprovision Boolean
- If this value is
true
, the Docker volume is created if it does not already exist. Note: This field is only used if the scope isshared
. - driver String
- Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement.
- driver
Opts Map<String,String> - Map of Docker driver specific options.
- labels Map<String,String>
- Map of custom metadata to add to your Docker volume.
- scope String
- Scope for the Docker volume, which determines its lifecycle, either
task
orshared
. Docker volumes that are scoped to atask
are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped asshared
persist after the task stops.
- autoprovision boolean
- If this value is
true
, the Docker volume is created if it does not already exist. Note: This field is only used if the scope isshared
. - driver string
- Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement.
- driver
Opts {[key: string]: string} - Map of Docker driver specific options.
- labels {[key: string]: string}
- Map of custom metadata to add to your Docker volume.
- scope string
- Scope for the Docker volume, which determines its lifecycle, either
task
orshared
. Docker volumes that are scoped to atask
are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped asshared
persist after the task stops.
- autoprovision bool
- If this value is
true
, the Docker volume is created if it does not already exist. Note: This field is only used if the scope isshared
. - driver str
- Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement.
- driver_
opts Mapping[str, str] - Map of Docker driver specific options.
- labels Mapping[str, str]
- Map of custom metadata to add to your Docker volume.
- scope str
- Scope for the Docker volume, which determines its lifecycle, either
task
orshared
. Docker volumes that are scoped to atask
are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped asshared
persist after the task stops.
- autoprovision Boolean
- If this value is
true
, the Docker volume is created if it does not already exist. Note: This field is only used if the scope isshared
. - driver String
- Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement.
- driver
Opts Map<String> - Map of Docker driver specific options.
- labels Map<String>
- Map of custom metadata to add to your Docker volume.
- scope String
- Scope for the Docker volume, which determines its lifecycle, either
task
orshared
. Docker volumes that are scoped to atask
are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped asshared
persist after the task stops.
TaskDefinitionVolumeEfsVolumeConfiguration, TaskDefinitionVolumeEfsVolumeConfigurationArgs
- File
System stringId - ID of the EFS File System.
- Task
Definition Volume Efs Volume Configuration Authorization Config - Configuration block for authorization for the Amazon EFS file system. Detailed below.
- Root
Directory string - Directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume will be used. Specifying / will have the same effect as omitting this parameter. This argument is ignored when using
authorization_config
. - Transit
Encryption string - Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used. - Transit
Encryption intPort - Port to use for transit encryption. If you do not specify a transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses.
- File
System stringId - ID of the EFS File System.
- Task
Definition Volume Efs Volume Configuration Authorization Config - Configuration block for authorization for the Amazon EFS file system. Detailed below.
- Root
Directory string - Directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume will be used. Specifying / will have the same effect as omitting this parameter. This argument is ignored when using
authorization_config
. - Transit
Encryption string - Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used. - Transit
Encryption intPort - Port to use for transit encryption. If you do not specify a transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses.
- file
System StringId - ID of the EFS File System.
- Task
Definition Volume Efs Volume Configuration Authorization Config - Configuration block for authorization for the Amazon EFS file system. Detailed below.
- root
Directory String - Directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume will be used. Specifying / will have the same effect as omitting this parameter. This argument is ignored when using
authorization_config
. - transit
Encryption String - Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used. - transit
Encryption IntegerPort - Port to use for transit encryption. If you do not specify a transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses.
- file
System stringId - ID of the EFS File System.
- Task
Definition Volume Efs Volume Configuration Authorization Config - Configuration block for authorization for the Amazon EFS file system. Detailed below.
- root
Directory string - Directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume will be used. Specifying / will have the same effect as omitting this parameter. This argument is ignored when using
authorization_config
. - transit
Encryption string - Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used. - transit
Encryption numberPort - Port to use for transit encryption. If you do not specify a transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses.
- file_
system_ strid - ID of the EFS File System.
- Task
Definition Volume Efs Volume Configuration Authorization Config - Configuration block for authorization for the Amazon EFS file system. Detailed below.
- root_
directory str - Directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume will be used. Specifying / will have the same effect as omitting this parameter. This argument is ignored when using
authorization_config
. - transit_
encryption str - Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used. - transit_
encryption_ intport - Port to use for transit encryption. If you do not specify a transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses.
- file
System StringId - ID of the EFS File System.
- Property Map
- Configuration block for authorization for the Amazon EFS file system. Detailed below.
- root
Directory String - Directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume will be used. Specifying / will have the same effect as omitting this parameter. This argument is ignored when using
authorization_config
. - transit
Encryption String - Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used. - transit
Encryption NumberPort - Port to use for transit encryption. If you do not specify a transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses.
TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfig, TaskDefinitionVolumeEfsVolumeConfigurationAuthorizationConfigArgs
- Access
Point stringId - Access point ID to use. If an access point is specified, the root directory value will be relative to the directory set for the access point. If specified, transit encryption must be enabled in the EFSVolumeConfiguration.
- Iam string
- Whether or not to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used.
- Access
Point stringId - Access point ID to use. If an access point is specified, the root directory value will be relative to the directory set for the access point. If specified, transit encryption must be enabled in the EFSVolumeConfiguration.
- Iam string
- Whether or not to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used.
- access
Point StringId - Access point ID to use. If an access point is specified, the root directory value will be relative to the directory set for the access point. If specified, transit encryption must be enabled in the EFSVolumeConfiguration.
- iam String
- Whether or not to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used.
- access
Point stringId - Access point ID to use. If an access point is specified, the root directory value will be relative to the directory set for the access point. If specified, transit encryption must be enabled in the EFSVolumeConfiguration.
- iam string
- Whether or not to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used.
- access_
point_ strid - Access point ID to use. If an access point is specified, the root directory value will be relative to the directory set for the access point. If specified, transit encryption must be enabled in the EFSVolumeConfiguration.
- iam str
- Whether or not to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used.
- access
Point StringId - Access point ID to use. If an access point is specified, the root directory value will be relative to the directory set for the access point. If specified, transit encryption must be enabled in the EFSVolumeConfiguration.
- iam String
- Whether or not to use the Amazon ECS task IAM role defined in a task definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration. Valid values:
ENABLED
,DISABLED
. If this parameter is omitted, the default value ofDISABLED
is used.
TaskDefinitionVolumeFsxWindowsFileServerVolumeConfiguration, TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationArgs
- Task
Definition Volume Fsx Windows File Server Volume Configuration Authorization Config - Configuration block for authorization for the Amazon FSx for Windows File Server file system detailed below.
- File
System stringId - The Amazon FSx for Windows File Server file system ID to use.
- Root
Directory string - The directory within the Amazon FSx for Windows File Server file system to mount as the root directory inside the host.
- Task
Definition Volume Fsx Windows File Server Volume Configuration Authorization Config - Configuration block for authorization for the Amazon FSx for Windows File Server file system detailed below.
- File
System stringId - The Amazon FSx for Windows File Server file system ID to use.
- Root
Directory string - The directory within the Amazon FSx for Windows File Server file system to mount as the root directory inside the host.
- Task
Definition Volume Fsx Windows File Server Volume Configuration Authorization Config - Configuration block for authorization for the Amazon FSx for Windows File Server file system detailed below.
- file
System StringId - The Amazon FSx for Windows File Server file system ID to use.
- root
Directory String - The directory within the Amazon FSx for Windows File Server file system to mount as the root directory inside the host.
- Task
Definition Volume Fsx Windows File Server Volume Configuration Authorization Config - Configuration block for authorization for the Amazon FSx for Windows File Server file system detailed below.
- file
System stringId - The Amazon FSx for Windows File Server file system ID to use.
- root
Directory string - The directory within the Amazon FSx for Windows File Server file system to mount as the root directory inside the host.
- Task
Definition Volume Fsx Windows File Server Volume Configuration Authorization Config - Configuration block for authorization for the Amazon FSx for Windows File Server file system detailed below.
- file_
system_ strid - The Amazon FSx for Windows File Server file system ID to use.
- root_
directory str - The directory within the Amazon FSx for Windows File Server file system to mount as the root directory inside the host.
- Property Map
- Configuration block for authorization for the Amazon FSx for Windows File Server file system detailed below.
- file
System StringId - The Amazon FSx for Windows File Server file system ID to use.
- root
Directory String - The directory within the Amazon FSx for Windows File Server file system to mount as the root directory inside the host.
TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfig, TaskDefinitionVolumeFsxWindowsFileServerVolumeConfigurationAuthorizationConfigArgs
- Credentials
Parameter string - The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager Parameter Store parameter. The ARNs refer to the stored credentials.
- Domain string
- A fully qualified domain name hosted by an AWS Directory Service Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
- Credentials
Parameter string - The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager Parameter Store parameter. The ARNs refer to the stored credentials.
- Domain string
- A fully qualified domain name hosted by an AWS Directory Service Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
- credentials
Parameter String - The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager Parameter Store parameter. The ARNs refer to the stored credentials.
- domain String
- A fully qualified domain name hosted by an AWS Directory Service Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
- credentials
Parameter string - The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager Parameter Store parameter. The ARNs refer to the stored credentials.
- domain string
- A fully qualified domain name hosted by an AWS Directory Service Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
- credentials_
parameter str - The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager Parameter Store parameter. The ARNs refer to the stored credentials.
- domain str
- A fully qualified domain name hosted by an AWS Directory Service Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
- credentials
Parameter String - The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or AWS Systems Manager Parameter Store parameter. The ARNs refer to the stored credentials.
- domain String
- A fully qualified domain name hosted by an AWS Directory Service Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
Import
Using pulumi import
, import ECS Task Definitions using their ARNs. For example:
$ pulumi import aws:ecs/taskDefinition:TaskDefinition example arn:aws:ecs:us-east-1:012345678910:task-definition/mytaskfamily:123
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.
Try AWS Native preview for resources not in the classic version.