awsx.ecs.FargateTaskDefinition
Explore with Pulumi AI
Create a TaskDefinition resource with the given unique name, arguments, and options. Creates required log-group and task & execution roles. Presents required Service load balancers if target group included in port mappings.
Create FargateTaskDefinition Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new FargateTaskDefinition(name: string, args?: FargateTaskDefinitionArgs, opts?: ComponentResourceOptions);
@overload
def FargateTaskDefinition(resource_name: str,
args: Optional[FargateTaskDefinitionArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def FargateTaskDefinition(resource_name: str,
opts: Optional[ResourceOptions] = None,
container: Optional[TaskDefinitionContainerDefinitionArgs] = None,
containers: Optional[Mapping[str, TaskDefinitionContainerDefinitionArgs]] = None,
cpu: Optional[str] = None,
ephemeral_storage: Optional[pulumi_aws.ecs.TaskDefinitionEphemeralStorageArgs] = None,
execution_role: Optional[_awsx.DefaultRoleWithPolicyArgs] = None,
family: Optional[str] = None,
inference_accelerators: Optional[Sequence[pulumi_aws.ecs.TaskDefinitionInferenceAcceleratorArgs]] = None,
ipc_mode: Optional[str] = None,
log_group: Optional[_awsx.DefaultLogGroupArgs] = None,
memory: Optional[str] = None,
pid_mode: Optional[str] = None,
placement_constraints: Optional[Sequence[pulumi_aws.ecs.TaskDefinitionPlacementConstraintArgs]] = None,
proxy_configuration: Optional[pulumi_aws.ecs.TaskDefinitionProxyConfigurationArgs] = None,
runtime_platform: Optional[pulumi_aws.ecs.TaskDefinitionRuntimePlatformArgs] = None,
skip_destroy: Optional[bool] = None,
tags: Optional[Mapping[str, str]] = None,
task_role: Optional[_awsx.DefaultRoleWithPolicyArgs] = None,
track_latest: Optional[bool] = None,
volumes: Optional[Sequence[pulumi_aws.ecs.TaskDefinitionVolumeArgs]] = None)
func NewFargateTaskDefinition(ctx *Context, name string, args *FargateTaskDefinitionArgs, opts ...ResourceOption) (*FargateTaskDefinition, error)
public FargateTaskDefinition(string name, FargateTaskDefinitionArgs? args = null, ComponentResourceOptions? opts = null)
public FargateTaskDefinition(String name, FargateTaskDefinitionArgs args)
public FargateTaskDefinition(String name, FargateTaskDefinitionArgs args, ComponentResourceOptions options)
type: awsx:ecs:FargateTaskDefinition
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 FargateTaskDefinitionArgs
- The arguments to resource properties.
- opts ComponentResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FargateTaskDefinitionArgs
- 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 FargateTaskDefinitionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FargateTaskDefinitionArgs
- The arguments to resource properties.
- opts ComponentResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FargateTaskDefinitionArgs
- The arguments to resource properties.
- options ComponentResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var fargateTaskDefinitionResource = new Awsx.Ecs.FargateTaskDefinition("fargateTaskDefinitionResource", new()
{
Container = new Awsx.Ecs.Inputs.TaskDefinitionContainerDefinitionArgs
{
Image = "string",
Name = "string",
Links = new()
{
"string",
},
VolumesFrom = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionVolumeFromArgs
{
ReadOnly = false,
SourceContainer = "string",
},
},
DnsSearchDomains = new()
{
"string",
},
LogConfiguration = new Awsx.Ecs.Inputs.TaskDefinitionLogConfigurationArgs
{
LogDriver = "string",
Options = "any",
SecretOptions = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionSecretArgs
{
Name = "string",
ValueFrom = "string",
},
},
},
DockerLabels = "any",
DockerSecurityOptions = new()
{
"string",
},
EntryPoint = new()
{
"string",
},
Environment = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionKeyValuePairArgs
{
Name = "string",
Value = "string",
},
},
EnvironmentFiles = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionEnvironmentFileArgs
{
Type = "string",
Value = "string",
},
},
Essential = false,
ExtraHosts = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionHostEntryArgs
{
Hostname = "string",
IpAddress = "string",
},
},
FirelensConfiguration = new Awsx.Ecs.Inputs.TaskDefinitionFirelensConfigurationArgs
{
Options = "any",
Type = "string",
},
HealthCheck = new Awsx.Ecs.Inputs.TaskDefinitionHealthCheckArgs
{
Command = new()
{
"string",
},
Interval = 0,
Retries = 0,
StartPeriod = 0,
Timeout = 0,
},
Hostname = "string",
DependsOn = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionContainerDependencyArgs
{
Condition = "string",
ContainerName = "string",
},
},
Interactive = false,
Command = new()
{
"string",
},
LinuxParameters = new Awsx.Ecs.Inputs.TaskDefinitionLinuxParametersArgs
{
Capabilities = new Awsx.Ecs.Inputs.TaskDefinitionKernelCapabilitiesArgs
{
Add = new()
{
"string",
},
Drop = new()
{
"string",
},
},
Devices = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionDeviceArgs
{
ContainerPath = "string",
HostPath = "string",
Permissions = new()
{
"string",
},
},
},
InitProcessEnabled = false,
MaxSwap = 0,
SharedMemorySize = 0,
Swappiness = 0,
Tmpfs = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionTmpfsArgs
{
Size = 0,
ContainerPath = "string",
MountOptions = new()
{
"string",
},
},
},
},
DnsServers = new()
{
"string",
},
DisableNetworking = false,
MountPoints = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionMountPointArgs
{
ContainerPath = "string",
ReadOnly = false,
SourceVolume = "string",
},
},
MemoryReservation = 0,
Cpu = 0,
PortMappings = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionPortMappingArgs
{
AppProtocol = Awsx.Ecs.TaskDefinitionPortMappingAppProtocol.Http,
ContainerPort = 0,
ContainerPortRange = "string",
HostPort = 0,
Name = "string",
Protocol = "string",
TargetGroup = targetGroup,
},
},
Privileged = false,
PseudoTerminal = false,
ReadonlyRootFilesystem = false,
RepositoryCredentials = new Awsx.Ecs.Inputs.TaskDefinitionRepositoryCredentialsArgs
{
CredentialsParameter = "string",
},
ResourceRequirements = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionResourceRequirementArgs
{
Type = "string",
Value = "string",
},
},
Secrets = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionSecretArgs
{
Name = "string",
ValueFrom = "string",
},
},
StartTimeout = 0,
StopTimeout = 0,
SystemControls = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionSystemControlArgs
{
Namespace = "string",
Value = "string",
},
},
Ulimits = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionUlimitArgs
{
HardLimit = 0,
Name = "string",
SoftLimit = 0,
},
},
User = "string",
Memory = 0,
WorkingDirectory = "string",
},
Containers =
{
{ "string", new Awsx.Ecs.Inputs.TaskDefinitionContainerDefinitionArgs
{
Image = "string",
Name = "string",
Links = new()
{
"string",
},
VolumesFrom = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionVolumeFromArgs
{
ReadOnly = false,
SourceContainer = "string",
},
},
DnsSearchDomains = new()
{
"string",
},
LogConfiguration = new Awsx.Ecs.Inputs.TaskDefinitionLogConfigurationArgs
{
LogDriver = "string",
Options = "any",
SecretOptions = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionSecretArgs
{
Name = "string",
ValueFrom = "string",
},
},
},
DockerLabels = "any",
DockerSecurityOptions = new()
{
"string",
},
EntryPoint = new()
{
"string",
},
Environment = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionKeyValuePairArgs
{
Name = "string",
Value = "string",
},
},
EnvironmentFiles = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionEnvironmentFileArgs
{
Type = "string",
Value = "string",
},
},
Essential = false,
ExtraHosts = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionHostEntryArgs
{
Hostname = "string",
IpAddress = "string",
},
},
FirelensConfiguration = new Awsx.Ecs.Inputs.TaskDefinitionFirelensConfigurationArgs
{
Options = "any",
Type = "string",
},
HealthCheck = new Awsx.Ecs.Inputs.TaskDefinitionHealthCheckArgs
{
Command = new()
{
"string",
},
Interval = 0,
Retries = 0,
StartPeriod = 0,
Timeout = 0,
},
Hostname = "string",
DependsOn = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionContainerDependencyArgs
{
Condition = "string",
ContainerName = "string",
},
},
Interactive = false,
Command = new()
{
"string",
},
LinuxParameters = new Awsx.Ecs.Inputs.TaskDefinitionLinuxParametersArgs
{
Capabilities = new Awsx.Ecs.Inputs.TaskDefinitionKernelCapabilitiesArgs
{
Add = new()
{
"string",
},
Drop = new()
{
"string",
},
},
Devices = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionDeviceArgs
{
ContainerPath = "string",
HostPath = "string",
Permissions = new()
{
"string",
},
},
},
InitProcessEnabled = false,
MaxSwap = 0,
SharedMemorySize = 0,
Swappiness = 0,
Tmpfs = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionTmpfsArgs
{
Size = 0,
ContainerPath = "string",
MountOptions = new()
{
"string",
},
},
},
},
DnsServers = new()
{
"string",
},
DisableNetworking = false,
MountPoints = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionMountPointArgs
{
ContainerPath = "string",
ReadOnly = false,
SourceVolume = "string",
},
},
MemoryReservation = 0,
Cpu = 0,
PortMappings = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionPortMappingArgs
{
AppProtocol = Awsx.Ecs.TaskDefinitionPortMappingAppProtocol.Http,
ContainerPort = 0,
ContainerPortRange = "string",
HostPort = 0,
Name = "string",
Protocol = "string",
TargetGroup = targetGroup,
},
},
Privileged = false,
PseudoTerminal = false,
ReadonlyRootFilesystem = false,
RepositoryCredentials = new Awsx.Ecs.Inputs.TaskDefinitionRepositoryCredentialsArgs
{
CredentialsParameter = "string",
},
ResourceRequirements = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionResourceRequirementArgs
{
Type = "string",
Value = "string",
},
},
Secrets = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionSecretArgs
{
Name = "string",
ValueFrom = "string",
},
},
StartTimeout = 0,
StopTimeout = 0,
SystemControls = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionSystemControlArgs
{
Namespace = "string",
Value = "string",
},
},
Ulimits = new()
{
new Awsx.Ecs.Inputs.TaskDefinitionUlimitArgs
{
HardLimit = 0,
Name = "string",
SoftLimit = 0,
},
},
User = "string",
Memory = 0,
WorkingDirectory = "string",
} },
},
Cpu = "string",
EphemeralStorage = new Aws.Ecs.Inputs.TaskDefinitionEphemeralStorageArgs
{
SizeInGib = 0,
},
ExecutionRole = new Awsx.Awsx.Inputs.DefaultRoleWithPolicyArgs
{
Args = new Awsx.Awsx.Inputs.RoleWithPolicyArgs
{
Description = "string",
ForceDetachPolicies = false,
ManagedPolicyArns = new()
{
"string",
},
MaxSessionDuration = 0,
Name = "string",
NamePrefix = "string",
Path = "string",
PermissionsBoundary = "string",
PolicyArns = new()
{
"string",
},
Tags =
{
{ "string", "string" },
},
},
RoleArn = "string",
Skip = false,
},
Family = "string",
InferenceAccelerators = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionInferenceAcceleratorArgs
{
DeviceName = "string",
DeviceType = "string",
},
},
IpcMode = "string",
LogGroup = new Awsx.Awsx.Inputs.DefaultLogGroupArgs
{
Args = new Awsx.Awsx.Inputs.LogGroupArgs
{
KmsKeyId = "string",
LogGroupClass = "string",
Name = "string",
NamePrefix = "string",
RetentionInDays = 0,
SkipDestroy = false,
Tags =
{
{ "string", "string" },
},
},
Existing = new Awsx.Awsx.Inputs.ExistingLogGroupArgs
{
Arn = "string",
Name = "string",
Region = "string",
},
Skip = false,
},
Memory = "string",
PidMode = "string",
PlacementConstraints = new[]
{
new Aws.Ecs.Inputs.TaskDefinitionPlacementConstraintArgs
{
Type = "string",
Expression = "string",
},
},
ProxyConfiguration = new Aws.Ecs.Inputs.TaskDefinitionProxyConfigurationArgs
{
ContainerName = "string",
Properties =
{
{ "string", "string" },
},
Type = "string",
},
RuntimePlatform = new Aws.Ecs.Inputs.TaskDefinitionRuntimePlatformArgs
{
CpuArchitecture = "string",
OperatingSystemFamily = "string",
},
SkipDestroy = false,
Tags =
{
{ "string", "string" },
},
TaskRole = new Awsx.Awsx.Inputs.DefaultRoleWithPolicyArgs
{
Args = new Awsx.Awsx.Inputs.RoleWithPolicyArgs
{
Description = "string",
ForceDetachPolicies = false,
ManagedPolicyArns = new()
{
"string",
},
MaxSessionDuration = 0,
Name = "string",
NamePrefix = "string",
Path = "string",
PermissionsBoundary = "string",
PolicyArns = new()
{
"string",
},
Tags =
{
{ "string", "string" },
},
},
RoleArn = "string",
Skip = false,
},
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.NewFargateTaskDefinition(ctx, "fargateTaskDefinitionResource", &ecs.FargateTaskDefinitionArgs{
Container: &ecs.TaskDefinitionContainerDefinitionArgs{
Image: pulumi.String("string"),
Name: pulumi.String("string"),
Links: pulumi.StringArray{
pulumi.String("string"),
},
VolumesFrom: ecs.TaskDefinitionVolumeFromArray{
&ecs.TaskDefinitionVolumeFromArgs{
ReadOnly: pulumi.Bool(false),
SourceContainer: pulumi.String("string"),
},
},
DnsSearchDomains: pulumi.StringArray{
pulumi.String("string"),
},
LogConfiguration: &ecs.TaskDefinitionLogConfigurationArgs{
LogDriver: pulumi.String("string"),
Options: pulumi.Any("any"),
SecretOptions: ecs.TaskDefinitionSecretArray{
&ecs.TaskDefinitionSecretArgs{
Name: pulumi.String("string"),
ValueFrom: pulumi.String("string"),
},
},
},
DockerLabels: pulumi.Any("any"),
DockerSecurityOptions: pulumi.StringArray{
pulumi.String("string"),
},
EntryPoint: pulumi.StringArray{
pulumi.String("string"),
},
Environment: ecs.TaskDefinitionKeyValuePairArray{
&ecs.TaskDefinitionKeyValuePairArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
EnvironmentFiles: ecs.TaskDefinitionEnvironmentFileArray{
&ecs.TaskDefinitionEnvironmentFileArgs{
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Essential: pulumi.Bool(false),
ExtraHosts: ecs.TaskDefinitionHostEntryArray{
&ecs.TaskDefinitionHostEntryArgs{
Hostname: pulumi.String("string"),
IpAddress: pulumi.String("string"),
},
},
FirelensConfiguration: &ecs.TaskDefinitionFirelensConfigurationArgs{
Options: pulumi.Any("any"),
Type: pulumi.String("string"),
},
HealthCheck: &ecs.TaskDefinitionHealthCheckArgs{
Command: pulumi.StringArray{
pulumi.String("string"),
},
Interval: pulumi.Int(0),
Retries: pulumi.Int(0),
StartPeriod: pulumi.Int(0),
Timeout: pulumi.Int(0),
},
Hostname: pulumi.String("string"),
DependsOn: ecs.TaskDefinitionContainerDependencyArray{
&ecs.TaskDefinitionContainerDependencyArgs{
Condition: pulumi.String("string"),
ContainerName: pulumi.String("string"),
},
},
Interactive: pulumi.Bool(false),
Command: pulumi.StringArray{
pulumi.String("string"),
},
LinuxParameters: &ecs.TaskDefinitionLinuxParametersArgs{
Capabilities: &ecs.TaskDefinitionKernelCapabilitiesArgs{
Add: pulumi.StringArray{
pulumi.String("string"),
},
Drop: pulumi.StringArray{
pulumi.String("string"),
},
},
Devices: ecs.TaskDefinitionDeviceArray{
&ecs.TaskDefinitionDeviceArgs{
ContainerPath: pulumi.String("string"),
HostPath: pulumi.String("string"),
Permissions: pulumi.StringArray{
pulumi.String("string"),
},
},
},
InitProcessEnabled: pulumi.Bool(false),
MaxSwap: pulumi.Int(0),
SharedMemorySize: pulumi.Int(0),
Swappiness: pulumi.Int(0),
Tmpfs: ecs.TaskDefinitionTmpfsArray{
&ecs.TaskDefinitionTmpfsArgs{
Size: pulumi.Int(0),
ContainerPath: pulumi.String("string"),
MountOptions: pulumi.StringArray{
pulumi.String("string"),
},
},
},
},
DnsServers: pulumi.StringArray{
pulumi.String("string"),
},
DisableNetworking: pulumi.Bool(false),
MountPoints: ecs.TaskDefinitionMountPointArray{
&ecs.TaskDefinitionMountPointArgs{
ContainerPath: pulumi.String("string"),
ReadOnly: pulumi.Bool(false),
SourceVolume: pulumi.String("string"),
},
},
MemoryReservation: pulumi.Int(0),
Cpu: pulumi.Int(0),
PortMappings: ecs.TaskDefinitionPortMappingArray{
&ecs.TaskDefinitionPortMappingArgs{
AppProtocol: ecs.TaskDefinitionPortMappingAppProtocolHttp,
ContainerPort: pulumi.Int(0),
ContainerPortRange: pulumi.String("string"),
HostPort: pulumi.Int(0),
Name: pulumi.String("string"),
Protocol: pulumi.String("string"),
TargetGroup: pulumi.Any(targetGroup),
},
},
Privileged: pulumi.Bool(false),
PseudoTerminal: pulumi.Bool(false),
ReadonlyRootFilesystem: pulumi.Bool(false),
RepositoryCredentials: &ecs.TaskDefinitionRepositoryCredentialsArgs{
CredentialsParameter: pulumi.String("string"),
},
ResourceRequirements: ecs.TaskDefinitionResourceRequirementArray{
&ecs.TaskDefinitionResourceRequirementArgs{
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Secrets: ecs.TaskDefinitionSecretArray{
&ecs.TaskDefinitionSecretArgs{
Name: pulumi.String("string"),
ValueFrom: pulumi.String("string"),
},
},
StartTimeout: pulumi.Int(0),
StopTimeout: pulumi.Int(0),
SystemControls: ecs.TaskDefinitionSystemControlArray{
&ecs.TaskDefinitionSystemControlArgs{
Namespace: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Ulimits: ecs.TaskDefinitionUlimitArray{
&ecs.TaskDefinitionUlimitArgs{
HardLimit: pulumi.Int(0),
Name: pulumi.String("string"),
SoftLimit: pulumi.Int(0),
},
},
User: pulumi.String("string"),
Memory: pulumi.Int(0),
WorkingDirectory: pulumi.String("string"),
},
Containers: map[string]ecs.TaskDefinitionContainerDefinitionArgs{
"string": &ecs.TaskDefinitionContainerDefinitionArgs{
Image: pulumi.String("string"),
Name: pulumi.String("string"),
Links: pulumi.StringArray{
pulumi.String("string"),
},
VolumesFrom: ecs.TaskDefinitionVolumeFromArray{
&ecs.TaskDefinitionVolumeFromArgs{
ReadOnly: pulumi.Bool(false),
SourceContainer: pulumi.String("string"),
},
},
DnsSearchDomains: pulumi.StringArray{
pulumi.String("string"),
},
LogConfiguration: &ecs.TaskDefinitionLogConfigurationArgs{
LogDriver: pulumi.String("string"),
Options: pulumi.Any("any"),
SecretOptions: ecs.TaskDefinitionSecretArray{
&ecs.TaskDefinitionSecretArgs{
Name: pulumi.String("string"),
ValueFrom: pulumi.String("string"),
},
},
},
DockerLabels: pulumi.Any("any"),
DockerSecurityOptions: pulumi.StringArray{
pulumi.String("string"),
},
EntryPoint: pulumi.StringArray{
pulumi.String("string"),
},
Environment: ecs.TaskDefinitionKeyValuePairArray{
&ecs.TaskDefinitionKeyValuePairArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
EnvironmentFiles: ecs.TaskDefinitionEnvironmentFileArray{
&ecs.TaskDefinitionEnvironmentFileArgs{
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Essential: pulumi.Bool(false),
ExtraHosts: ecs.TaskDefinitionHostEntryArray{
&ecs.TaskDefinitionHostEntryArgs{
Hostname: pulumi.String("string"),
IpAddress: pulumi.String("string"),
},
},
FirelensConfiguration: &ecs.TaskDefinitionFirelensConfigurationArgs{
Options: pulumi.Any("any"),
Type: pulumi.String("string"),
},
HealthCheck: &ecs.TaskDefinitionHealthCheckArgs{
Command: pulumi.StringArray{
pulumi.String("string"),
},
Interval: pulumi.Int(0),
Retries: pulumi.Int(0),
StartPeriod: pulumi.Int(0),
Timeout: pulumi.Int(0),
},
Hostname: pulumi.String("string"),
DependsOn: ecs.TaskDefinitionContainerDependencyArray{
&ecs.TaskDefinitionContainerDependencyArgs{
Condition: pulumi.String("string"),
ContainerName: pulumi.String("string"),
},
},
Interactive: pulumi.Bool(false),
Command: pulumi.StringArray{
pulumi.String("string"),
},
LinuxParameters: &ecs.TaskDefinitionLinuxParametersArgs{
Capabilities: &ecs.TaskDefinitionKernelCapabilitiesArgs{
Add: pulumi.StringArray{
pulumi.String("string"),
},
Drop: pulumi.StringArray{
pulumi.String("string"),
},
},
Devices: ecs.TaskDefinitionDeviceArray{
&ecs.TaskDefinitionDeviceArgs{
ContainerPath: pulumi.String("string"),
HostPath: pulumi.String("string"),
Permissions: pulumi.StringArray{
pulumi.String("string"),
},
},
},
InitProcessEnabled: pulumi.Bool(false),
MaxSwap: pulumi.Int(0),
SharedMemorySize: pulumi.Int(0),
Swappiness: pulumi.Int(0),
Tmpfs: ecs.TaskDefinitionTmpfsArray{
&ecs.TaskDefinitionTmpfsArgs{
Size: pulumi.Int(0),
ContainerPath: pulumi.String("string"),
MountOptions: pulumi.StringArray{
pulumi.String("string"),
},
},
},
},
DnsServers: pulumi.StringArray{
pulumi.String("string"),
},
DisableNetworking: pulumi.Bool(false),
MountPoints: ecs.TaskDefinitionMountPointArray{
&ecs.TaskDefinitionMountPointArgs{
ContainerPath: pulumi.String("string"),
ReadOnly: pulumi.Bool(false),
SourceVolume: pulumi.String("string"),
},
},
MemoryReservation: pulumi.Int(0),
Cpu: pulumi.Int(0),
PortMappings: ecs.TaskDefinitionPortMappingArray{
&ecs.TaskDefinitionPortMappingArgs{
AppProtocol: ecs.TaskDefinitionPortMappingAppProtocolHttp,
ContainerPort: pulumi.Int(0),
ContainerPortRange: pulumi.String("string"),
HostPort: pulumi.Int(0),
Name: pulumi.String("string"),
Protocol: pulumi.String("string"),
TargetGroup: pulumi.Any(targetGroup),
},
},
Privileged: pulumi.Bool(false),
PseudoTerminal: pulumi.Bool(false),
ReadonlyRootFilesystem: pulumi.Bool(false),
RepositoryCredentials: &ecs.TaskDefinitionRepositoryCredentialsArgs{
CredentialsParameter: pulumi.String("string"),
},
ResourceRequirements: ecs.TaskDefinitionResourceRequirementArray{
&ecs.TaskDefinitionResourceRequirementArgs{
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Secrets: ecs.TaskDefinitionSecretArray{
&ecs.TaskDefinitionSecretArgs{
Name: pulumi.String("string"),
ValueFrom: pulumi.String("string"),
},
},
StartTimeout: pulumi.Int(0),
StopTimeout: pulumi.Int(0),
SystemControls: ecs.TaskDefinitionSystemControlArray{
&ecs.TaskDefinitionSystemControlArgs{
Namespace: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Ulimits: ecs.TaskDefinitionUlimitArray{
&ecs.TaskDefinitionUlimitArgs{
HardLimit: pulumi.Int(0),
Name: pulumi.String("string"),
SoftLimit: pulumi.Int(0),
},
},
User: pulumi.String("string"),
Memory: pulumi.Int(0),
WorkingDirectory: pulumi.String("string"),
},
},
Cpu: pulumi.String("string"),
EphemeralStorage: &ecs.TaskDefinitionEphemeralStorageArgs{
SizeInGib: pulumi.Int(0),
},
ExecutionRole: &awsx.DefaultRoleWithPolicyArgs{
Args: &awsx.RoleWithPolicyArgs{
Description: pulumi.String("string"),
ForceDetachPolicies: pulumi.Bool(false),
ManagedPolicyArns: pulumi.StringArray{
pulumi.String("string"),
},
MaxSessionDuration: pulumi.Int(0),
Name: pulumi.String("string"),
NamePrefix: pulumi.String("string"),
Path: pulumi.String("string"),
PermissionsBoundary: pulumi.String("string"),
PolicyArns: []string{
"string",
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
RoleArn: pulumi.String("string"),
Skip: false,
},
Family: pulumi.String("string"),
InferenceAccelerators: ecs.TaskDefinitionInferenceAcceleratorArray{
&ecs.TaskDefinitionInferenceAcceleratorArgs{
DeviceName: pulumi.String("string"),
DeviceType: pulumi.String("string"),
},
},
IpcMode: pulumi.String("string"),
LogGroup: &awsx.DefaultLogGroupArgs{
Args: &awsx.LogGroupArgs{
KmsKeyId: pulumi.String("string"),
LogGroupClass: pulumi.String("string"),
Name: pulumi.String("string"),
NamePrefix: pulumi.String("string"),
RetentionInDays: pulumi.Int(0),
SkipDestroy: pulumi.Bool(false),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
Existing: &awsx.ExistingLogGroupArgs{
Arn: pulumi.String("string"),
Name: pulumi.String("string"),
Region: pulumi.String("string"),
},
Skip: false,
},
Memory: pulumi.String("string"),
PidMode: pulumi.String("string"),
PlacementConstraints: ecs.TaskDefinitionPlacementConstraintArray{
&ecs.TaskDefinitionPlacementConstraintArgs{
Type: pulumi.String("string"),
Expression: pulumi.String("string"),
},
},
ProxyConfiguration: &ecs.TaskDefinitionProxyConfigurationArgs{
ContainerName: pulumi.String("string"),
Properties: pulumi.StringMap{
"string": pulumi.String("string"),
},
Type: 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"),
},
TaskRole: &awsx.DefaultRoleWithPolicyArgs{
Args: &awsx.RoleWithPolicyArgs{
Description: pulumi.String("string"),
ForceDetachPolicies: pulumi.Bool(false),
ManagedPolicyArns: pulumi.StringArray{
pulumi.String("string"),
},
MaxSessionDuration: pulumi.Int(0),
Name: pulumi.String("string"),
NamePrefix: pulumi.String("string"),
Path: pulumi.String("string"),
PermissionsBoundary: pulumi.String("string"),
PolicyArns: []string{
"string",
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
RoleArn: pulumi.String("string"),
Skip: false,
},
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 fargateTaskDefinitionResource = new FargateTaskDefinition("fargateTaskDefinitionResource", FargateTaskDefinitionArgs.builder()
.container(TaskDefinitionContainerDefinitionArgs.builder()
.image("string")
.name("string")
.links("string")
.volumesFrom(TaskDefinitionVolumeFromArgs.builder()
.readOnly(false)
.sourceContainer("string")
.build())
.dnsSearchDomains("string")
.logConfiguration(TaskDefinitionLogConfigurationArgs.builder()
.logDriver("string")
.options("any")
.secretOptions(TaskDefinitionSecretArgs.builder()
.name("string")
.valueFrom("string")
.build())
.build())
.dockerLabels("any")
.dockerSecurityOptions("string")
.entryPoint("string")
.environment(TaskDefinitionKeyValuePairArgs.builder()
.name("string")
.value("string")
.build())
.environmentFiles(TaskDefinitionEnvironmentFileArgs.builder()
.type("string")
.value("string")
.build())
.essential(false)
.extraHosts(TaskDefinitionHostEntryArgs.builder()
.hostname("string")
.ipAddress("string")
.build())
.firelensConfiguration(TaskDefinitionFirelensConfigurationArgs.builder()
.options("any")
.type("string")
.build())
.healthCheck(TaskDefinitionHealthCheckArgs.builder()
.command("string")
.interval(0)
.retries(0)
.startPeriod(0)
.timeout(0)
.build())
.hostname("string")
.dependsOn(TaskDefinitionContainerDependencyArgs.builder()
.condition("string")
.containerName("string")
.build())
.interactive(false)
.command("string")
.linuxParameters(TaskDefinitionLinuxParametersArgs.builder()
.capabilities(TaskDefinitionKernelCapabilitiesArgs.builder()
.add("string")
.drop("string")
.build())
.devices(TaskDefinitionDeviceArgs.builder()
.containerPath("string")
.hostPath("string")
.permissions("string")
.build())
.initProcessEnabled(false)
.maxSwap(0)
.sharedMemorySize(0)
.swappiness(0)
.tmpfs(TaskDefinitionTmpfsArgs.builder()
.size(0)
.containerPath("string")
.mountOptions("string")
.build())
.build())
.dnsServers("string")
.disableNetworking(false)
.mountPoints(TaskDefinitionMountPointArgs.builder()
.containerPath("string")
.readOnly(false)
.sourceVolume("string")
.build())
.memoryReservation(0)
.cpu(0)
.portMappings(TaskDefinitionPortMappingArgs.builder()
.appProtocol("http")
.containerPort(0)
.containerPortRange("string")
.hostPort(0)
.name("string")
.protocol("string")
.targetGroup(targetGroup)
.build())
.privileged(false)
.pseudoTerminal(false)
.readonlyRootFilesystem(false)
.repositoryCredentials(TaskDefinitionRepositoryCredentialsArgs.builder()
.credentialsParameter("string")
.build())
.resourceRequirements(TaskDefinitionResourceRequirementArgs.builder()
.type("string")
.value("string")
.build())
.secrets(TaskDefinitionSecretArgs.builder()
.name("string")
.valueFrom("string")
.build())
.startTimeout(0)
.stopTimeout(0)
.systemControls(TaskDefinitionSystemControlArgs.builder()
.namespace("string")
.value("string")
.build())
.ulimits(TaskDefinitionUlimitArgs.builder()
.hardLimit(0)
.name("string")
.softLimit(0)
.build())
.user("string")
.memory(0)
.workingDirectory("string")
.build())
.containers(Map.of("string", Map.ofEntries(
Map.entry("image", "string"),
Map.entry("name", "string"),
Map.entry("links", "string"),
Map.entry("volumesFrom", Map.ofEntries(
Map.entry("readOnly", false),
Map.entry("sourceContainer", "string")
)),
Map.entry("dnsSearchDomains", "string"),
Map.entry("logConfiguration", Map.ofEntries(
Map.entry("logDriver", "string"),
Map.entry("options", "any"),
Map.entry("secretOptions", Map.ofEntries(
Map.entry("name", "string"),
Map.entry("valueFrom", "string")
))
)),
Map.entry("dockerLabels", "any"),
Map.entry("dockerSecurityOptions", "string"),
Map.entry("entryPoint", "string"),
Map.entry("environment", Map.ofEntries(
Map.entry("name", "string"),
Map.entry("value", "string")
)),
Map.entry("environmentFiles", Map.ofEntries(
Map.entry("type", "string"),
Map.entry("value", "string")
)),
Map.entry("essential", false),
Map.entry("extraHosts", Map.ofEntries(
Map.entry("hostname", "string"),
Map.entry("ipAddress", "string")
)),
Map.entry("firelensConfiguration", Map.ofEntries(
Map.entry("options", "any"),
Map.entry("type", "string")
)),
Map.entry("healthCheck", Map.ofEntries(
Map.entry("command", "string"),
Map.entry("interval", 0),
Map.entry("retries", 0),
Map.entry("startPeriod", 0),
Map.entry("timeout", 0)
)),
Map.entry("hostname", "string"),
Map.entry("dependsOn", Map.ofEntries(
Map.entry("condition", "string"),
Map.entry("containerName", "string")
)),
Map.entry("interactive", false),
Map.entry("command", "string"),
Map.entry("linuxParameters", Map.ofEntries(
Map.entry("capabilities", Map.ofEntries(
Map.entry("add", "string"),
Map.entry("drop", "string")
)),
Map.entry("devices", Map.ofEntries(
Map.entry("containerPath", "string"),
Map.entry("hostPath", "string"),
Map.entry("permissions", "string")
)),
Map.entry("initProcessEnabled", false),
Map.entry("maxSwap", 0),
Map.entry("sharedMemorySize", 0),
Map.entry("swappiness", 0),
Map.entry("tmpfs", Map.ofEntries(
Map.entry("size", 0),
Map.entry("containerPath", "string"),
Map.entry("mountOptions", "string")
))
)),
Map.entry("dnsServers", "string"),
Map.entry("disableNetworking", false),
Map.entry("mountPoints", Map.ofEntries(
Map.entry("containerPath", "string"),
Map.entry("readOnly", false),
Map.entry("sourceVolume", "string")
)),
Map.entry("memoryReservation", 0),
Map.entry("cpu", 0),
Map.entry("portMappings", Map.ofEntries(
Map.entry("appProtocol", "http"),
Map.entry("containerPort", 0),
Map.entry("containerPortRange", "string"),
Map.entry("hostPort", 0),
Map.entry("name", "string"),
Map.entry("protocol", "string"),
Map.entry("targetGroup", targetGroup)
)),
Map.entry("privileged", false),
Map.entry("pseudoTerminal", false),
Map.entry("readonlyRootFilesystem", false),
Map.entry("repositoryCredentials", Map.of("credentialsParameter", "string")),
Map.entry("resourceRequirements", Map.ofEntries(
Map.entry("type", "string"),
Map.entry("value", "string")
)),
Map.entry("secrets", Map.ofEntries(
Map.entry("name", "string"),
Map.entry("valueFrom", "string")
)),
Map.entry("startTimeout", 0),
Map.entry("stopTimeout", 0),
Map.entry("systemControls", Map.ofEntries(
Map.entry("namespace", "string"),
Map.entry("value", "string")
)),
Map.entry("ulimits", Map.ofEntries(
Map.entry("hardLimit", 0),
Map.entry("name", "string"),
Map.entry("softLimit", 0)
)),
Map.entry("user", "string"),
Map.entry("memory", 0),
Map.entry("workingDirectory", "string")
)))
.cpu("string")
.ephemeralStorage(TaskDefinitionEphemeralStorageArgs.builder()
.sizeInGib(0)
.build())
.executionRole(DefaultRoleWithPolicyArgs.builder()
.args(RoleWithPolicyArgs.builder()
.description("string")
.forceDetachPolicies(false)
.managedPolicyArns("string")
.maxSessionDuration(0)
.name("string")
.namePrefix("string")
.path("string")
.permissionsBoundary("string")
.policyArns("string")
.tags(Map.of("string", "string"))
.build())
.roleArn("string")
.skip(false)
.build())
.family("string")
.inferenceAccelerators(TaskDefinitionInferenceAcceleratorArgs.builder()
.deviceName("string")
.deviceType("string")
.build())
.ipcMode("string")
.logGroup(DefaultLogGroupArgs.builder()
.args(LogGroupArgs.builder()
.kmsKeyId("string")
.logGroupClass("string")
.name("string")
.namePrefix("string")
.retentionInDays(0)
.skipDestroy(false)
.tags(Map.of("string", "string"))
.build())
.existing(ExistingLogGroupArgs.builder()
.arn("string")
.name("string")
.region("string")
.build())
.skip(false)
.build())
.memory("string")
.pidMode("string")
.placementConstraints(TaskDefinitionPlacementConstraintArgs.builder()
.type("string")
.expression("string")
.build())
.proxyConfiguration(TaskDefinitionProxyConfigurationArgs.builder()
.containerName("string")
.properties(Map.of("string", "string"))
.type("string")
.build())
.runtimePlatform(TaskDefinitionRuntimePlatformArgs.builder()
.cpuArchitecture("string")
.operatingSystemFamily("string")
.build())
.skipDestroy(false)
.tags(Map.of("string", "string"))
.taskRole(DefaultRoleWithPolicyArgs.builder()
.args(RoleWithPolicyArgs.builder()
.description("string")
.forceDetachPolicies(false)
.managedPolicyArns("string")
.maxSessionDuration(0)
.name("string")
.namePrefix("string")
.path("string")
.permissionsBoundary("string")
.policyArns("string")
.tags(Map.of("string", "string"))
.build())
.roleArn("string")
.skip(false)
.build())
.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());
fargate_task_definition_resource = awsx.ecs.FargateTaskDefinition("fargateTaskDefinitionResource",
container={
"image": "string",
"name": "string",
"links": ["string"],
"volumes_from": [{
"read_only": False,
"source_container": "string",
}],
"dns_search_domains": ["string"],
"log_configuration": {
"log_driver": "string",
"options": "any",
"secret_options": [{
"name": "string",
"value_from": "string",
}],
},
"docker_labels": "any",
"docker_security_options": ["string"],
"entry_point": ["string"],
"environment": [{
"name": "string",
"value": "string",
}],
"environment_files": [{
"type": "string",
"value": "string",
}],
"essential": False,
"extra_hosts": [{
"hostname": "string",
"ip_address": "string",
}],
"firelens_configuration": {
"options": "any",
"type": "string",
},
"health_check": {
"command": ["string"],
"interval": 0,
"retries": 0,
"start_period": 0,
"timeout": 0,
},
"hostname": "string",
"depends_on": [{
"condition": "string",
"container_name": "string",
}],
"interactive": False,
"command": ["string"],
"linux_parameters": {
"capabilities": {
"add": ["string"],
"drop": ["string"],
},
"devices": [{
"container_path": "string",
"host_path": "string",
"permissions": ["string"],
}],
"init_process_enabled": False,
"max_swap": 0,
"shared_memory_size": 0,
"swappiness": 0,
"tmpfs": [{
"size": 0,
"container_path": "string",
"mount_options": ["string"],
}],
},
"dns_servers": ["string"],
"disable_networking": False,
"mount_points": [{
"container_path": "string",
"read_only": False,
"source_volume": "string",
}],
"memory_reservation": 0,
"cpu": 0,
"port_mappings": [{
"app_protocol": awsx.ecs.TaskDefinitionPortMappingAppProtocol.HTTP,
"container_port": 0,
"container_port_range": "string",
"host_port": 0,
"name": "string",
"protocol": "string",
"target_group": target_group,
}],
"privileged": False,
"pseudo_terminal": False,
"readonly_root_filesystem": False,
"repository_credentials": {
"credentials_parameter": "string",
},
"resource_requirements": [{
"type": "string",
"value": "string",
}],
"secrets": [{
"name": "string",
"value_from": "string",
}],
"start_timeout": 0,
"stop_timeout": 0,
"system_controls": [{
"namespace": "string",
"value": "string",
}],
"ulimits": [{
"hard_limit": 0,
"name": "string",
"soft_limit": 0,
}],
"user": "string",
"memory": 0,
"working_directory": "string",
},
containers={
"string": {
"image": "string",
"name": "string",
"links": ["string"],
"volumes_from": [{
"read_only": False,
"source_container": "string",
}],
"dns_search_domains": ["string"],
"log_configuration": {
"log_driver": "string",
"options": "any",
"secret_options": [{
"name": "string",
"value_from": "string",
}],
},
"docker_labels": "any",
"docker_security_options": ["string"],
"entry_point": ["string"],
"environment": [{
"name": "string",
"value": "string",
}],
"environment_files": [{
"type": "string",
"value": "string",
}],
"essential": False,
"extra_hosts": [{
"hostname": "string",
"ip_address": "string",
}],
"firelens_configuration": {
"options": "any",
"type": "string",
},
"health_check": {
"command": ["string"],
"interval": 0,
"retries": 0,
"start_period": 0,
"timeout": 0,
},
"hostname": "string",
"depends_on": [{
"condition": "string",
"container_name": "string",
}],
"interactive": False,
"command": ["string"],
"linux_parameters": {
"capabilities": {
"add": ["string"],
"drop": ["string"],
},
"devices": [{
"container_path": "string",
"host_path": "string",
"permissions": ["string"],
}],
"init_process_enabled": False,
"max_swap": 0,
"shared_memory_size": 0,
"swappiness": 0,
"tmpfs": [{
"size": 0,
"container_path": "string",
"mount_options": ["string"],
}],
},
"dns_servers": ["string"],
"disable_networking": False,
"mount_points": [{
"container_path": "string",
"read_only": False,
"source_volume": "string",
}],
"memory_reservation": 0,
"cpu": 0,
"port_mappings": [{
"app_protocol": awsx.ecs.TaskDefinitionPortMappingAppProtocol.HTTP,
"container_port": 0,
"container_port_range": "string",
"host_port": 0,
"name": "string",
"protocol": "string",
"target_group": target_group,
}],
"privileged": False,
"pseudo_terminal": False,
"readonly_root_filesystem": False,
"repository_credentials": {
"credentials_parameter": "string",
},
"resource_requirements": [{
"type": "string",
"value": "string",
}],
"secrets": [{
"name": "string",
"value_from": "string",
}],
"start_timeout": 0,
"stop_timeout": 0,
"system_controls": [{
"namespace": "string",
"value": "string",
}],
"ulimits": [{
"hard_limit": 0,
"name": "string",
"soft_limit": 0,
}],
"user": "string",
"memory": 0,
"working_directory": "string",
},
},
cpu="string",
ephemeral_storage={
"size_in_gib": 0,
},
execution_role={
"args": {
"description": "string",
"force_detach_policies": False,
"managed_policy_arns": ["string"],
"max_session_duration": 0,
"name": "string",
"name_prefix": "string",
"path": "string",
"permissions_boundary": "string",
"policy_arns": ["string"],
"tags": {
"string": "string",
},
},
"role_arn": "string",
"skip": False,
},
family="string",
inference_accelerators=[{
"device_name": "string",
"device_type": "string",
}],
ipc_mode="string",
log_group={
"args": {
"kms_key_id": "string",
"log_group_class": "string",
"name": "string",
"name_prefix": "string",
"retention_in_days": 0,
"skip_destroy": False,
"tags": {
"string": "string",
},
},
"existing": {
"arn": "string",
"name": "string",
"region": "string",
},
"skip": False,
},
memory="string",
pid_mode="string",
placement_constraints=[{
"type": "string",
"expression": "string",
}],
proxy_configuration={
"container_name": "string",
"properties": {
"string": "string",
},
"type": "string",
},
runtime_platform={
"cpu_architecture": "string",
"operating_system_family": "string",
},
skip_destroy=False,
tags={
"string": "string",
},
task_role={
"args": {
"description": "string",
"force_detach_policies": False,
"managed_policy_arns": ["string"],
"max_session_duration": 0,
"name": "string",
"name_prefix": "string",
"path": "string",
"permissions_boundary": "string",
"policy_arns": ["string"],
"tags": {
"string": "string",
},
},
"role_arn": "string",
"skip": False,
},
track_latest=False,
volumes=[{
"name": "string",
"configure_at_launch": False,
"docker_volume_configuration": {
"autoprovision": False,
"driver": "string",
"driver_opts": {
"string": "string",
},
"labels": {
"string": "string",
},
"scope": "string",
},
"efs_volume_configuration": {
"file_system_id": "string",
"authorization_config": {
"access_point_id": "string",
"iam": "string",
},
"root_directory": "string",
"transit_encryption": "string",
"transit_encryption_port": 0,
},
"fsx_windows_file_server_volume_configuration": {
"authorization_config": {
"credentials_parameter": "string",
"domain": "string",
},
"file_system_id": "string",
"root_directory": "string",
},
"host_path": "string",
}])
const fargateTaskDefinitionResource = new awsx.ecs.FargateTaskDefinition("fargateTaskDefinitionResource", {
container: {
image: "string",
name: "string",
links: ["string"],
volumesFrom: [{
readOnly: false,
sourceContainer: "string",
}],
dnsSearchDomains: ["string"],
logConfiguration: {
logDriver: "string",
options: "any",
secretOptions: [{
name: "string",
valueFrom: "string",
}],
},
dockerLabels: "any",
dockerSecurityOptions: ["string"],
entryPoint: ["string"],
environment: [{
name: "string",
value: "string",
}],
environmentFiles: [{
type: "string",
value: "string",
}],
essential: false,
extraHosts: [{
hostname: "string",
ipAddress: "string",
}],
firelensConfiguration: {
options: "any",
type: "string",
},
healthCheck: {
command: ["string"],
interval: 0,
retries: 0,
startPeriod: 0,
timeout: 0,
},
hostname: "string",
dependsOn: [{
condition: "string",
containerName: "string",
}],
interactive: false,
command: ["string"],
linuxParameters: {
capabilities: {
add: ["string"],
drop: ["string"],
},
devices: [{
containerPath: "string",
hostPath: "string",
permissions: ["string"],
}],
initProcessEnabled: false,
maxSwap: 0,
sharedMemorySize: 0,
swappiness: 0,
tmpfs: [{
size: 0,
containerPath: "string",
mountOptions: ["string"],
}],
},
dnsServers: ["string"],
disableNetworking: false,
mountPoints: [{
containerPath: "string",
readOnly: false,
sourceVolume: "string",
}],
memoryReservation: 0,
cpu: 0,
portMappings: [{
appProtocol: awsx.ecs.TaskDefinitionPortMappingAppProtocol.Http,
containerPort: 0,
containerPortRange: "string",
hostPort: 0,
name: "string",
protocol: "string",
targetGroup: targetGroup,
}],
privileged: false,
pseudoTerminal: false,
readonlyRootFilesystem: false,
repositoryCredentials: {
credentialsParameter: "string",
},
resourceRequirements: [{
type: "string",
value: "string",
}],
secrets: [{
name: "string",
valueFrom: "string",
}],
startTimeout: 0,
stopTimeout: 0,
systemControls: [{
namespace: "string",
value: "string",
}],
ulimits: [{
hardLimit: 0,
name: "string",
softLimit: 0,
}],
user: "string",
memory: 0,
workingDirectory: "string",
},
containers: {
string: {
image: "string",
name: "string",
links: ["string"],
volumesFrom: [{
readOnly: false,
sourceContainer: "string",
}],
dnsSearchDomains: ["string"],
logConfiguration: {
logDriver: "string",
options: "any",
secretOptions: [{
name: "string",
valueFrom: "string",
}],
},
dockerLabels: "any",
dockerSecurityOptions: ["string"],
entryPoint: ["string"],
environment: [{
name: "string",
value: "string",
}],
environmentFiles: [{
type: "string",
value: "string",
}],
essential: false,
extraHosts: [{
hostname: "string",
ipAddress: "string",
}],
firelensConfiguration: {
options: "any",
type: "string",
},
healthCheck: {
command: ["string"],
interval: 0,
retries: 0,
startPeriod: 0,
timeout: 0,
},
hostname: "string",
dependsOn: [{
condition: "string",
containerName: "string",
}],
interactive: false,
command: ["string"],
linuxParameters: {
capabilities: {
add: ["string"],
drop: ["string"],
},
devices: [{
containerPath: "string",
hostPath: "string",
permissions: ["string"],
}],
initProcessEnabled: false,
maxSwap: 0,
sharedMemorySize: 0,
swappiness: 0,
tmpfs: [{
size: 0,
containerPath: "string",
mountOptions: ["string"],
}],
},
dnsServers: ["string"],
disableNetworking: false,
mountPoints: [{
containerPath: "string",
readOnly: false,
sourceVolume: "string",
}],
memoryReservation: 0,
cpu: 0,
portMappings: [{
appProtocol: awsx.ecs.TaskDefinitionPortMappingAppProtocol.Http,
containerPort: 0,
containerPortRange: "string",
hostPort: 0,
name: "string",
protocol: "string",
targetGroup: targetGroup,
}],
privileged: false,
pseudoTerminal: false,
readonlyRootFilesystem: false,
repositoryCredentials: {
credentialsParameter: "string",
},
resourceRequirements: [{
type: "string",
value: "string",
}],
secrets: [{
name: "string",
valueFrom: "string",
}],
startTimeout: 0,
stopTimeout: 0,
systemControls: [{
namespace: "string",
value: "string",
}],
ulimits: [{
hardLimit: 0,
name: "string",
softLimit: 0,
}],
user: "string",
memory: 0,
workingDirectory: "string",
},
},
cpu: "string",
ephemeralStorage: {
sizeInGib: 0,
},
executionRole: {
args: {
description: "string",
forceDetachPolicies: false,
managedPolicyArns: ["string"],
maxSessionDuration: 0,
name: "string",
namePrefix: "string",
path: "string",
permissionsBoundary: "string",
policyArns: ["string"],
tags: {
string: "string",
},
},
roleArn: "string",
skip: false,
},
family: "string",
inferenceAccelerators: [{
deviceName: "string",
deviceType: "string",
}],
ipcMode: "string",
logGroup: {
args: {
kmsKeyId: "string",
logGroupClass: "string",
name: "string",
namePrefix: "string",
retentionInDays: 0,
skipDestroy: false,
tags: {
string: "string",
},
},
existing: {
arn: "string",
name: "string",
region: "string",
},
skip: false,
},
memory: "string",
pidMode: "string",
placementConstraints: [{
type: "string",
expression: "string",
}],
proxyConfiguration: {
containerName: "string",
properties: {
string: "string",
},
type: "string",
},
runtimePlatform: {
cpuArchitecture: "string",
operatingSystemFamily: "string",
},
skipDestroy: false,
tags: {
string: "string",
},
taskRole: {
args: {
description: "string",
forceDetachPolicies: false,
managedPolicyArns: ["string"],
maxSessionDuration: 0,
name: "string",
namePrefix: "string",
path: "string",
permissionsBoundary: "string",
policyArns: ["string"],
tags: {
string: "string",
},
},
roleArn: "string",
skip: false,
},
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: awsx:ecs:FargateTaskDefinition
properties:
container:
command:
- string
cpu: 0
dependsOn:
- condition: string
containerName: string
disableNetworking: false
dnsSearchDomains:
- string
dnsServers:
- string
dockerLabels: any
dockerSecurityOptions:
- string
entryPoint:
- string
environment:
- name: string
value: string
environmentFiles:
- type: string
value: string
essential: false
extraHosts:
- hostname: string
ipAddress: string
firelensConfiguration:
options: any
type: string
healthCheck:
command:
- string
interval: 0
retries: 0
startPeriod: 0
timeout: 0
hostname: string
image: string
interactive: false
links:
- string
linuxParameters:
capabilities:
add:
- string
drop:
- string
devices:
- containerPath: string
hostPath: string
permissions:
- string
initProcessEnabled: false
maxSwap: 0
sharedMemorySize: 0
swappiness: 0
tmpfs:
- containerPath: string
mountOptions:
- string
size: 0
logConfiguration:
logDriver: string
options: any
secretOptions:
- name: string
valueFrom: string
memory: 0
memoryReservation: 0
mountPoints:
- containerPath: string
readOnly: false
sourceVolume: string
name: string
portMappings:
- appProtocol: http
containerPort: 0
containerPortRange: string
hostPort: 0
name: string
protocol: string
targetGroup: ${targetGroup}
privileged: false
pseudoTerminal: false
readonlyRootFilesystem: false
repositoryCredentials:
credentialsParameter: string
resourceRequirements:
- type: string
value: string
secrets:
- name: string
valueFrom: string
startTimeout: 0
stopTimeout: 0
systemControls:
- namespace: string
value: string
ulimits:
- hardLimit: 0
name: string
softLimit: 0
user: string
volumesFrom:
- readOnly: false
sourceContainer: string
workingDirectory: string
containers:
string:
command:
- string
cpu: 0
dependsOn:
- condition: string
containerName: string
disableNetworking: false
dnsSearchDomains:
- string
dnsServers:
- string
dockerLabels: any
dockerSecurityOptions:
- string
entryPoint:
- string
environment:
- name: string
value: string
environmentFiles:
- type: string
value: string
essential: false
extraHosts:
- hostname: string
ipAddress: string
firelensConfiguration:
options: any
type: string
healthCheck:
command:
- string
interval: 0
retries: 0
startPeriod: 0
timeout: 0
hostname: string
image: string
interactive: false
links:
- string
linuxParameters:
capabilities:
add:
- string
drop:
- string
devices:
- containerPath: string
hostPath: string
permissions:
- string
initProcessEnabled: false
maxSwap: 0
sharedMemorySize: 0
swappiness: 0
tmpfs:
- containerPath: string
mountOptions:
- string
size: 0
logConfiguration:
logDriver: string
options: any
secretOptions:
- name: string
valueFrom: string
memory: 0
memoryReservation: 0
mountPoints:
- containerPath: string
readOnly: false
sourceVolume: string
name: string
portMappings:
- appProtocol: http
containerPort: 0
containerPortRange: string
hostPort: 0
name: string
protocol: string
targetGroup: ${targetGroup}
privileged: false
pseudoTerminal: false
readonlyRootFilesystem: false
repositoryCredentials:
credentialsParameter: string
resourceRequirements:
- type: string
value: string
secrets:
- name: string
valueFrom: string
startTimeout: 0
stopTimeout: 0
systemControls:
- namespace: string
value: string
ulimits:
- hardLimit: 0
name: string
softLimit: 0
user: string
volumesFrom:
- readOnly: false
sourceContainer: string
workingDirectory: string
cpu: string
ephemeralStorage:
sizeInGib: 0
executionRole:
args:
description: string
forceDetachPolicies: false
managedPolicyArns:
- string
maxSessionDuration: 0
name: string
namePrefix: string
path: string
permissionsBoundary: string
policyArns:
- string
tags:
string: string
roleArn: string
skip: false
family: string
inferenceAccelerators:
- deviceName: string
deviceType: string
ipcMode: string
logGroup:
args:
kmsKeyId: string
logGroupClass: string
name: string
namePrefix: string
retentionInDays: 0
skipDestroy: false
tags:
string: string
existing:
arn: string
name: string
region: string
skip: false
memory: string
pidMode: string
placementConstraints:
- expression: string
type: string
proxyConfiguration:
containerName: string
properties:
string: string
type: string
runtimePlatform:
cpuArchitecture: string
operatingSystemFamily: string
skipDestroy: false
tags:
string: string
taskRole:
args:
description: string
forceDetachPolicies: false
managedPolicyArns:
- string
maxSessionDuration: 0
name: string
namePrefix: string
path: string
permissionsBoundary: string
policyArns:
- string
tags:
string: string
roleArn: string
skip: false
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
FargateTaskDefinition Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The FargateTaskDefinition resource accepts the following input properties:
- Container
Task
Definition Container Definition Single container to make a TaskDefinition from. Useful for simple cases where there aren't multiple containers, especially when creating a TaskDefinition to call [run] on.
Either [container] or [containers] must be provided.
- Containers
Dictionary<string, Task
Definition Container Definition Args> All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.
Either [container] or [containers] must be provided.
- Cpu string
- The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- Ephemeral
Storage Pulumi.Aws. Ecs. Inputs. Task Definition 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.
This type is defined in the AWS Classic package.
- Execution
Role Pulumi.Awsx. Awsx. Inputs. Default Role With Policy - The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.
- Family string
- An optional unique name for your task definition. If not specified, then a default will be created.
- Inference
Accelerators List<Pulumi.Aws. Ecs. Inputs. Task Definition 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
. - Log
Group Pulumi.Awsx. Awsx. Inputs. Default Log Group - A set of volume blocks that containers in your task may use.
- Memory string
- The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- Pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - Placement
Constraints List<Pulumi.Aws. Ecs. Inputs. Task Definition Placement Constraint> - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - Proxy
Configuration Pulumi.Aws. Ecs. Inputs. Task Definition Proxy Configuration Configuration block for the App Mesh proxy. Detailed below.
This type is defined in the AWS Classic package.
- Runtime
Platform Pulumi.Aws. Ecs. Inputs. Task Definition Runtime Platform Configuration block for runtime_platform that containers in your task may use.
This type is defined in the AWS Classic package.
- 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 Pulumi.Awsx. Awsx. Inputs. Default Role With Policy - IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.
- Track
Latest bool - Whether should track latest
ACTIVE
task definition on AWS or the one created with the resource stored in state. Default isfalse
. Useful in the event the task definition is modified outside of this resource. - Volumes
List<Pulumi.
Aws. Ecs. Inputs. Task Definition Volume> - Configuration block for volumes that containers in your task may use. Detailed below.
- Container
Task
Definition Container Definition Args Single container to make a TaskDefinition from. Useful for simple cases where there aren't multiple containers, especially when creating a TaskDefinition to call [run] on.
Either [container] or [containers] must be provided.
- Containers
map[string]Task
Definition Container Definition Args All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.
Either [container] or [containers] must be provided.
- Cpu string
- The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- 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.
This type is defined in the AWS Classic package.
- Execution
Role DefaultRole With Policy Args - The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.
- Family string
- An optional unique name for your task definition. If not specified, then a default will be created.
- 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
. - Log
Group DefaultLog Group Args - A set of volume blocks that containers in your task may use.
- Memory string
- The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- 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.
This type is defined in the AWS Classic package.
- Runtime
Platform TaskDefinition Runtime Platform Args Configuration block for runtime_platform that containers in your task may use.
This type is defined in the AWS Classic package.
- 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 DefaultRole With Policy Args - IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.
- Track
Latest bool - Whether should track latest
ACTIVE
task definition on AWS or the one created with the resource stored in state. Default isfalse
. Useful in the event the task definition is modified outside of this resource. - Volumes
Task
Definition Volume Args - Configuration block for volumes that containers in your task may use. Detailed below.
- container
Task
Definition Container Definition Single container to make a TaskDefinition from. Useful for simple cases where there aren't multiple containers, especially when creating a TaskDefinition to call [run] on.
Either [container] or [containers] must be provided.
- containers
Map<String,Task
Definition Container Definition Args> All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.
Either [container] or [containers] must be provided.
- cpu String
- The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- 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.
This type is defined in the AWS Classic package.
- execution
Role DefaultRole With Policy - The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.
- family String
- An optional unique name for your task definition. If not specified, then a default will be created.
- 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
. - log
Group DefaultLog Group - A set of volume blocks that containers in your task may use.
- memory String
- The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- 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.
This type is defined in the AWS Classic package.
- runtime
Platform TaskDefinition Runtime Platform Configuration block for runtime_platform that containers in your task may use.
This type is defined in the AWS Classic package.
- 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 DefaultRole With Policy - IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.
- track
Latest Boolean - Whether should track latest
ACTIVE
task definition on AWS or the one created with the resource stored in state. Default isfalse
. Useful in the event the task definition is modified outside of this resource. - volumes
List<Task
Definition Volume> - Configuration block for volumes that containers in your task may use. Detailed below.
- container
Task
Definition Container Definition Single container to make a TaskDefinition from. Useful for simple cases where there aren't multiple containers, especially when creating a TaskDefinition to call [run] on.
Either [container] or [containers] must be provided.
- containers
{[key: string]: Task
Definition Container Definition Args} All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.
Either [container] or [containers] must be provided.
- cpu string
- The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- ephemeral
Storage pulumiAws.types.input. Task Definition 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.
This type is defined in the AWS Classic package.
- execution
Role awsx.Default Role With Policy - The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.
- family string
- An optional unique name for your task definition. If not specified, then a default will be created.
- inference
Accelerators pulumiAws.types.input. Task Definition 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
. - log
Group awsx.Default Log Group - A set of volume blocks that containers in your task may use.
- memory string
- The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- pid
Mode string - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement
Constraints pulumiAws.types.input. Task Definition Placement Constraint[] - Configuration block for rules that are taken into consideration during task placement. Maximum number of
placement_constraints
is10
. Detailed below. - proxy
Configuration pulumiAws.types.input. Task Definition Proxy Configuration Configuration block for the App Mesh proxy. Detailed below.
This type is defined in the AWS Classic package.
- runtime
Platform pulumiAws.types.input. Task Definition Runtime Platform Configuration block for runtime_platform that containers in your task may use.
This type is defined in the AWS Classic package.
- 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 awsx.Default Role With Policy - IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.
- track
Latest boolean - Whether should track latest
ACTIVE
task definition on AWS or the one created with the resource stored in state. Default isfalse
. Useful in the event the task definition is modified outside of this resource. - volumes
pulumi
Aws.types.input. Task Definition Volume[] - Configuration block for volumes that containers in your task may use. Detailed below.
- container
Task
Definition Container Definition Args Single container to make a TaskDefinition from. Useful for simple cases where there aren't multiple containers, especially when creating a TaskDefinition to call [run] on.
Either [container] or [containers] must be provided.
- containers
Mapping[str, Task
Definition Container Definition Args] All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.
Either [container] or [containers] must be provided.
- cpu str
- The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- ephemeral_
storage pulumi_aws.ecs. Task Definition 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.
This type is defined in the AWS Classic package.
- execution_
role awsx.Default Role With Policy Args - The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.
- family str
- An optional unique name for your task definition. If not specified, then a default will be created.
- inference_
accelerators Sequence[pulumi_aws.ecs. Task Definition 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
. - log_
group awsx.Default Log Group Args - A set of volume blocks that containers in your task may use.
- memory str
- The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- pid_
mode str - Process namespace to use for the containers in the task. The valid values are
host
andtask
. - placement_
constraints Sequence[pulumi_aws.ecs. Task Definition 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 pulumi_aws.ecs. Task Definition Proxy Configuration Args Configuration block for the App Mesh proxy. Detailed below.
This type is defined in the AWS Classic package.
- runtime_
platform pulumi_aws.ecs. Task Definition Runtime Platform Args Configuration block for runtime_platform that containers in your task may use.
This type is defined in the AWS Classic package.
- 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 awsx.Default Role With Policy Args - IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.
- track_
latest bool - Whether should track latest
ACTIVE
task definition on AWS or the one created with the resource stored in state. Default isfalse
. Useful in the event the task definition is modified outside of this resource. - volumes
Sequence[pulumi_
aws.ecs. Task Definition Volume Args] - Configuration block for volumes that containers in your task may use. Detailed below.
- container Property Map
Single container to make a TaskDefinition from. Useful for simple cases where there aren't multiple containers, especially when creating a TaskDefinition to call [run] on.
Either [container] or [containers] must be provided.
- containers Map<Property Map>
All the containers to make a TaskDefinition from. Useful when creating a Service that will contain many containers within.
Either [container] or [containers] must be provided.
- cpu String
- The number of cpu units used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- 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.
This type is defined in the AWS Classic package.
- execution
Role Property Map - The execution role that the Amazon ECS container agent and the Docker daemon can assume. Will be created automatically if not defined.
- family String
- An optional unique name for your task definition. If not specified, then a default will be created.
- 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
. - log
Group Property Map - A set of volume blocks that containers in your task may use.
- memory String
- The amount (in MiB) of memory used by the task. If not provided, a default will be computed based on the cumulative needs specified by [containerDefinitions]
- 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.
This type is defined in the AWS Classic package.
- runtime
Platform Property Map Configuration block for runtime_platform that containers in your task may use.
This type is defined in the AWS Classic package.
- 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 Property Map - IAM role that allows your Amazon ECS container task to make calls to other AWS services. Will be created automatically if not defined.
- track
Latest Boolean - Whether should track latest
ACTIVE
task definition on AWS or the one created with the resource stored in state. Default isfalse
. Useful in the event the task definition is modified outside of this resource. - 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 FargateTaskDefinition resource produces the following output properties:
- Load
Balancers List<Pulumi.Aws. Ecs. Outputs. Service Load Balancer> - Computed load balancers from target groups specified of container port mappings.
- Task
Definition Pulumi.Aws. Ecs. Task Definition - Underlying ECS Task Definition resource This type is defined in the AWS Classic package.
- Load
Balancers ServiceLoad Balancer - Computed load balancers from target groups specified of container port mappings.
- Task
Definition TaskDefinition - Underlying ECS Task Definition resource This type is defined in the AWS Classic package.
- load
Balancers List<ServiceLoad Balancer> - Computed load balancers from target groups specified of container port mappings.
- task
Definition TaskDefinition - Underlying ECS Task Definition resource This type is defined in the AWS Classic package.
- load
Balancers pulumiAws.types.output. Service Load Balancer[] - Computed load balancers from target groups specified of container port mappings.
- task
Definition pulumiAws. Task Definition - Underlying ECS Task Definition resource This type is defined in the AWS Classic package.
- load_
balancers Sequence[pulumi_aws.ecs. Service Load Balancer] - Computed load balancers from target groups specified of container port mappings.
- task_
definition pulumi_aws.ecs. Task Definition - Underlying ECS Task Definition resource This type is defined in the AWS Classic package.
- load
Balancers List<Property Map> - Computed load balancers from target groups specified of container port mappings.
- task
Definition aws::TaskDefinition - Underlying ECS Task Definition resource This type is defined in the AWS Classic package.
Supporting Types
DefaultLogGroup, DefaultLogGroupArgs
- Args
Pulumi.
Awsx. Awsx. Inputs. Log Group - Arguments to use instead of the default values during creation.
- Existing
Pulumi.
Awsx. Awsx. Inputs. Existing Log Group - Identity of an existing log group to use. Cannot be used in combination with
args
oropts
. - Skip bool
- Skip creation of the log group.
- Args
Log
Group - Arguments to use instead of the default values during creation.
- Existing
Existing
Log Group - Identity of an existing log group to use. Cannot be used in combination with
args
oropts
. - Skip bool
- Skip creation of the log group.
- args
Log
Group - Arguments to use instead of the default values during creation.
- existing
Existing
Log Group - Identity of an existing log group to use. Cannot be used in combination with
args
oropts
. - skip Boolean
- Skip creation of the log group.
- args
awsx.
Log Group - Arguments to use instead of the default values during creation.
- existing
awsx.
Existing Log Group - Identity of an existing log group to use. Cannot be used in combination with
args
oropts
. - skip boolean
- Skip creation of the log group.
- args
awsx.
Log Group - Arguments to use instead of the default values during creation.
- existing
awsx.
Existing Log Group - Identity of an existing log group to use. Cannot be used in combination with
args
oropts
. - skip bool
- Skip creation of the log group.
- args Property Map
- Arguments to use instead of the default values during creation.
- existing Property Map
- Identity of an existing log group to use. Cannot be used in combination with
args
oropts
. - skip Boolean
- Skip creation of the log group.
DefaultRoleWithPolicy, DefaultRoleWithPolicyArgs
- Args
Pulumi.
Awsx. Awsx. Inputs. Role With Policy - Args to use when creating the role and policies. Can't be specified if
roleArn
is used. - Role
Arn string - ARN of existing role to use instead of creating a new role. Cannot be used in combination with
args
oropts
. - Skip bool
- Skips creation of the role if set to
true
.
- Args
Role
With Policy - Args to use when creating the role and policies. Can't be specified if
roleArn
is used. - Role
Arn string - ARN of existing role to use instead of creating a new role. Cannot be used in combination with
args
oropts
. - Skip bool
- Skips creation of the role if set to
true
.
- args
Role
With Policy - Args to use when creating the role and policies. Can't be specified if
roleArn
is used. - role
Arn String - ARN of existing role to use instead of creating a new role. Cannot be used in combination with
args
oropts
. - skip Boolean
- Skips creation of the role if set to
true
.
- args
awsx.
Role With Policy - Args to use when creating the role and policies. Can't be specified if
roleArn
is used. - role
Arn string - ARN of existing role to use instead of creating a new role. Cannot be used in combination with
args
oropts
. - skip boolean
- Skips creation of the role if set to
true
.
- args
awsx.
Role With Policy - Args to use when creating the role and policies. Can't be specified if
roleArn
is used. - role_
arn str - ARN of existing role to use instead of creating a new role. Cannot be used in combination with
args
oropts
. - skip bool
- Skips creation of the role if set to
true
.
- args Property Map
- Args to use when creating the role and policies. Can't be specified if
roleArn
is used. - role
Arn String - ARN of existing role to use instead of creating a new role. Cannot be used in combination with
args
oropts
. - skip Boolean
- Skips creation of the role if set to
true
.
ExistingLogGroup, ExistingLogGroupArgs
LogGroup, LogGroupArgs
- Kms
Key stringId - The ARN of the KMS Key to use when encrypting log data. Please note, after the AWS KMS CMK is disassociated from the log group, AWS CloudWatch Logs stops encrypting newly ingested data for the log group. All previously ingested data remains encrypted, and AWS CloudWatch Logs requires permissions for the CMK whenever the encrypted data is requested.
- Log
Group stringClass - Specified the log class of the log group. Possible values are:
STANDARD
orINFREQUENT_ACCESS
. - Name string
- The name of the log group. If omitted, this provider will assign a random, unique name.
- Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name
. - Retention
In intDays - Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653, and 0. If you select 0, the events in the log group are always retained and never expire.
- Skip
Destroy bool - Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the state.
- Dictionary<string, string>
- A map of tags to assign to the resource. .If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- Kms
Key stringId - The ARN of the KMS Key to use when encrypting log data. Please note, after the AWS KMS CMK is disassociated from the log group, AWS CloudWatch Logs stops encrypting newly ingested data for the log group. All previously ingested data remains encrypted, and AWS CloudWatch Logs requires permissions for the CMK whenever the encrypted data is requested.
- Log
Group stringClass - Specified the log class of the log group. Possible values are:
STANDARD
orINFREQUENT_ACCESS
. - Name string
- The name of the log group. If omitted, this provider will assign a random, unique name.
- Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name
. - Retention
In intDays - Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653, and 0. If you select 0, the events in the log group are always retained and never expire.
- Skip
Destroy bool - Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the state.
- map[string]string
- A map of tags to assign to the resource. .If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- kms
Key StringId - The ARN of the KMS Key to use when encrypting log data. Please note, after the AWS KMS CMK is disassociated from the log group, AWS CloudWatch Logs stops encrypting newly ingested data for the log group. All previously ingested data remains encrypted, and AWS CloudWatch Logs requires permissions for the CMK whenever the encrypted data is requested.
- log
Group StringClass - Specified the log class of the log group. Possible values are:
STANDARD
orINFREQUENT_ACCESS
. - name String
- The name of the log group. If omitted, this provider will assign a random, unique name.
- name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name
. - retention
In IntegerDays - Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653, and 0. If you select 0, the events in the log group are always retained and never expire.
- skip
Destroy Boolean - Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the state.
- Map<String,String>
- A map of tags to assign to the resource. .If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- kms
Key stringId - The ARN of the KMS Key to use when encrypting log data. Please note, after the AWS KMS CMK is disassociated from the log group, AWS CloudWatch Logs stops encrypting newly ingested data for the log group. All previously ingested data remains encrypted, and AWS CloudWatch Logs requires permissions for the CMK whenever the encrypted data is requested.
- log
Group stringClass - Specified the log class of the log group. Possible values are:
STANDARD
orINFREQUENT_ACCESS
. - name string
- The name of the log group. If omitted, this provider will assign a random, unique name.
- name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name
. - retention
In numberDays - Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653, and 0. If you select 0, the events in the log group are always retained and never expire.
- skip
Destroy boolean - Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the state.
- {[key: string]: string}
- A map of tags to assign to the resource. .If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- kms_
key_ strid - The ARN of the KMS Key to use when encrypting log data. Please note, after the AWS KMS CMK is disassociated from the log group, AWS CloudWatch Logs stops encrypting newly ingested data for the log group. All previously ingested data remains encrypted, and AWS CloudWatch Logs requires permissions for the CMK whenever the encrypted data is requested.
- log_
group_ strclass - Specified the log class of the log group. Possible values are:
STANDARD
orINFREQUENT_ACCESS
. - name str
- The name of the log group. If omitted, this provider will assign a random, unique name.
- name_
prefix str - Creates a unique name beginning with the specified prefix. Conflicts with
name
. - retention_
in_ intdays - Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653, and 0. If you select 0, the events in the log group are always retained and never expire.
- skip_
destroy bool - Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the state.
- Mapping[str, str]
- A map of tags to assign to the resource. .If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- kms
Key StringId - The ARN of the KMS Key to use when encrypting log data. Please note, after the AWS KMS CMK is disassociated from the log group, AWS CloudWatch Logs stops encrypting newly ingested data for the log group. All previously ingested data remains encrypted, and AWS CloudWatch Logs requires permissions for the CMK whenever the encrypted data is requested.
- log
Group StringClass - Specified the log class of the log group. Possible values are:
STANDARD
orINFREQUENT_ACCESS
. - name String
- The name of the log group. If omitted, this provider will assign a random, unique name.
- name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name
. - retention
In NumberDays - Specifies the number of days you want to retain log events in the specified log group. Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, 3653, and 0. If you select 0, the events in the log group are always retained and never expire.
- skip
Destroy Boolean - Set to true if you do not wish the log group (and any logs it may contain) to be deleted at destroy time, and instead just remove the log group from the state.
- Map<String>
- A map of tags to assign to the resource. .If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
RoleWithPolicy, RoleWithPolicyArgs
- Description string
- Description of the role.
- Force
Detach boolPolicies - Whether to force detaching any policies the role has before destroying it. Defaults to
false
. - Inline
Policies List<Pulumi.Aws. Iam. Inputs. Role Inline Policy> - Configuration block defining an exclusive set of IAM inline policies associated with the IAM role. See below. If no blocks are configured, Pulumi will not manage any inline policies in this resource. Configuring one empty block (i.e.,
inline_policy {}
) will cause Pulumi to remove all inline policies added out of band onapply
. - Managed
Policy List<string>Arns - Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Pulumi will ignore policy attachments to this resource. When configured, Pulumi will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e.,
managed_policy_arns = []
) will cause Pulumi to remove all managed policy attachments. - Max
Session intDuration - Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.
- Name string
- Friendly name of the role. If omitted, the provider will assign a random, unique name. See IAM Identifiers for more information.
- Name
Prefix string - Creates a unique friendly name beginning with the specified prefix. Conflicts with
name
. - Path string
- Path to the role. See IAM Identifiers for more information.
- Permissions
Boundary string - ARN of the policy that is used to set the permissions boundary for the role.
- Policy
Arns List<string> - ARNs of the policies to attach to the created role.
- Dictionary<string, string>
- Key-value mapping of tags for the IAM role. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- Description string
- Description of the role.
- Force
Detach boolPolicies - Whether to force detaching any policies the role has before destroying it. Defaults to
false
. - Inline
Policies RoleInline Policy - Configuration block defining an exclusive set of IAM inline policies associated with the IAM role. See below. If no blocks are configured, Pulumi will not manage any inline policies in this resource. Configuring one empty block (i.e.,
inline_policy {}
) will cause Pulumi to remove all inline policies added out of band onapply
. - Managed
Policy []stringArns - Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Pulumi will ignore policy attachments to this resource. When configured, Pulumi will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e.,
managed_policy_arns = []
) will cause Pulumi to remove all managed policy attachments. - Max
Session intDuration - Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.
- Name string
- Friendly name of the role. If omitted, the provider will assign a random, unique name. See IAM Identifiers for more information.
- Name
Prefix string - Creates a unique friendly name beginning with the specified prefix. Conflicts with
name
. - Path string
- Path to the role. See IAM Identifiers for more information.
- Permissions
Boundary string - ARN of the policy that is used to set the permissions boundary for the role.
- Policy
Arns []string - ARNs of the policies to attach to the created role.
- map[string]string
- Key-value mapping of tags for the IAM role. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- description String
- Description of the role.
- force
Detach BooleanPolicies - Whether to force detaching any policies the role has before destroying it. Defaults to
false
. - inline
Policies List<RoleInline Policy> - Configuration block defining an exclusive set of IAM inline policies associated with the IAM role. See below. If no blocks are configured, Pulumi will not manage any inline policies in this resource. Configuring one empty block (i.e.,
inline_policy {}
) will cause Pulumi to remove all inline policies added out of band onapply
. - managed
Policy List<String>Arns - Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Pulumi will ignore policy attachments to this resource. When configured, Pulumi will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e.,
managed_policy_arns = []
) will cause Pulumi to remove all managed policy attachments. - max
Session IntegerDuration - Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.
- name String
- Friendly name of the role. If omitted, the provider will assign a random, unique name. See IAM Identifiers for more information.
- name
Prefix String - Creates a unique friendly name beginning with the specified prefix. Conflicts with
name
. - path String
- Path to the role. See IAM Identifiers for more information.
- permissions
Boundary String - ARN of the policy that is used to set the permissions boundary for the role.
- policy
Arns List<String> - ARNs of the policies to attach to the created role.
- Map<String,String>
- Key-value mapping of tags for the IAM role. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- description string
- Description of the role.
- force
Detach booleanPolicies - Whether to force detaching any policies the role has before destroying it. Defaults to
false
. - inline
Policies pulumiAws.types.input.iam. Role Inline Policy[] - Configuration block defining an exclusive set of IAM inline policies associated with the IAM role. See below. If no blocks are configured, Pulumi will not manage any inline policies in this resource. Configuring one empty block (i.e.,
inline_policy {}
) will cause Pulumi to remove all inline policies added out of band onapply
. - managed
Policy string[]Arns - Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Pulumi will ignore policy attachments to this resource. When configured, Pulumi will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e.,
managed_policy_arns = []
) will cause Pulumi to remove all managed policy attachments. - max
Session numberDuration - Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.
- name string
- Friendly name of the role. If omitted, the provider will assign a random, unique name. See IAM Identifiers for more information.
- name
Prefix string - Creates a unique friendly name beginning with the specified prefix. Conflicts with
name
. - path string
- Path to the role. See IAM Identifiers for more information.
- permissions
Boundary string - ARN of the policy that is used to set the permissions boundary for the role.
- policy
Arns string[] - ARNs of the policies to attach to the created role.
- {[key: string]: string}
- Key-value mapping of tags for the IAM role. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- description str
- Description of the role.
- force_
detach_ boolpolicies - Whether to force detaching any policies the role has before destroying it. Defaults to
false
. - inline_
policies Sequence[pulumi_aws.iam. Role Inline Policy Args] - Configuration block defining an exclusive set of IAM inline policies associated with the IAM role. See below. If no blocks are configured, Pulumi will not manage any inline policies in this resource. Configuring one empty block (i.e.,
inline_policy {}
) will cause Pulumi to remove all inline policies added out of band onapply
. - managed_
policy_ Sequence[str]arns - Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Pulumi will ignore policy attachments to this resource. When configured, Pulumi will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e.,
managed_policy_arns = []
) will cause Pulumi to remove all managed policy attachments. - max_
session_ intduration - Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.
- name str
- Friendly name of the role. If omitted, the provider will assign a random, unique name. See IAM Identifiers for more information.
- name_
prefix str - Creates a unique friendly name beginning with the specified prefix. Conflicts with
name
. - path str
- Path to the role. See IAM Identifiers for more information.
- permissions_
boundary str - ARN of the policy that is used to set the permissions boundary for the role.
- policy_
arns Sequence[str] - ARNs of the policies to attach to the created role.
- Mapping[str, str]
- Key-value mapping of tags for the IAM role. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
- description String
- Description of the role.
- force
Detach BooleanPolicies - Whether to force detaching any policies the role has before destroying it. Defaults to
false
. - inline
Policies List<Property Map> - Configuration block defining an exclusive set of IAM inline policies associated with the IAM role. See below. If no blocks are configured, Pulumi will not manage any inline policies in this resource. Configuring one empty block (i.e.,
inline_policy {}
) will cause Pulumi to remove all inline policies added out of band onapply
. - managed
Policy List<String>Arns - Set of exclusive IAM managed policy ARNs to attach to the IAM role. If this attribute is not configured, Pulumi will ignore policy attachments to this resource. When configured, Pulumi will align the role's managed policy attachments with this set by attaching or detaching managed policies. Configuring an empty set (i.e.,
managed_policy_arns = []
) will cause Pulumi to remove all managed policy attachments. - max
Session NumberDuration - Maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.
- name String
- Friendly name of the role. If omitted, the provider will assign a random, unique name. See IAM Identifiers for more information.
- name
Prefix String - Creates a unique friendly name beginning with the specified prefix. Conflicts with
name
. - path String
- Path to the role. See IAM Identifiers for more information.
- permissions
Boundary String - ARN of the policy that is used to set the permissions boundary for the role.
- policy
Arns List<String> - ARNs of the policies to attach to the created role.
- Map<String>
- Key-value mapping of tags for the IAM role. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TaskDefinitionContainerDefinition, TaskDefinitionContainerDefinitionArgs
- Image string
- The image used to start a container. This string is passed directly to the Docker daemon.
- Name string
- The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
- Command List<string>
- Cpu int
- Depends
On List<TaskDefinition Container Dependency> - Disable
Networking bool - Dns
Search List<string>Domains - Dns
Servers List<string> - Docker
Labels object - Docker
Security List<string>Options - Entry
Point List<string> - Environment
List<Task
Definition Key Value Pair> - The environment variables to pass to a container
- Environment
Files List<TaskDefinition Environment File> - The list of one or more files that contain the environment variables to pass to a container
- Essential bool
- Extra
Hosts List<TaskDefinition Host Entry> - Firelens
Configuration TaskDefinition Firelens Configuration - Health
Check TaskDefinition Health Check - Hostname string
- Interactive bool
- Links List<string>
- Linux
Parameters TaskDefinition Linux Parameters - Log
Configuration TaskDefinition Log Configuration - Memory int
- The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
- Memory
Reservation int - Mount
Points List<TaskDefinition Mount Point> - Port
Mappings List<TaskDefinition Port Mapping> - Port mappings allow containers to access ports on the host container instance to send or receive traffic.
- Privileged bool
- Pseudo
Terminal bool - Readonly
Root boolFilesystem - Repository
Credentials TaskDefinition Repository Credentials - Resource
Requirements List<TaskDefinition Resource Requirement> - Secrets
List<Task
Definition Secret> - Start
Timeout int - Stop
Timeout int - System
Controls List<TaskDefinition System Control> - Ulimits
List<Task
Definition Ulimit> - User string
- Volumes
From List<TaskDefinition Volume From> - Working
Directory string
- Image string
- The image used to start a container. This string is passed directly to the Docker daemon.
- Name string
- The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
- Command []string
- Cpu int
- Depends
On []TaskDefinition Container Dependency - Disable
Networking bool - Dns
Search []stringDomains - Dns
Servers []string - Docker
Labels interface{} - Docker
Security []stringOptions - Entry
Point []string - Environment
[]Task
Definition Key Value Pair - The environment variables to pass to a container
- Environment
Files []TaskDefinition Environment File - The list of one or more files that contain the environment variables to pass to a container
- Essential bool
- Extra
Hosts []TaskDefinition Host Entry - Firelens
Configuration TaskDefinition Firelens Configuration - Health
Check TaskDefinition Health Check - Hostname string
- Interactive bool
- Links []string
- Linux
Parameters TaskDefinition Linux Parameters - Log
Configuration TaskDefinition Log Configuration - Memory int
- The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
- Memory
Reservation int - Mount
Points []TaskDefinition Mount Point - Port
Mappings []TaskDefinition Port Mapping - Port mappings allow containers to access ports on the host container instance to send or receive traffic.
- Privileged bool
- Pseudo
Terminal bool - Readonly
Root boolFilesystem - Repository
Credentials TaskDefinition Repository Credentials - Resource
Requirements []TaskDefinition Resource Requirement - Secrets
[]Task
Definition Secret - Start
Timeout int - Stop
Timeout int - System
Controls []TaskDefinition System Control - Ulimits
[]Task
Definition Ulimit - User string
- Volumes
From []TaskDefinition Volume From - Working
Directory string
- image String
- The image used to start a container. This string is passed directly to the Docker daemon.
- name String
- The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
- command List<String>
- cpu Integer
- depends
On List<TaskDefinition Container Dependency> - disable
Networking Boolean - dns
Search List<String>Domains - dns
Servers List<String> - docker
Labels Object - docker
Security List<String>Options - entry
Point List<String> - environment
List<Task
Definition Key Value Pair> - The environment variables to pass to a container
- environment
Files List<TaskDefinition Environment File> - The list of one or more files that contain the environment variables to pass to a container
- essential Boolean
- extra
Hosts List<TaskDefinition Host Entry> - firelens
Configuration TaskDefinition Firelens Configuration - health
Check TaskDefinition Health Check - hostname String
- interactive Boolean
- links List<String>
- linux
Parameters TaskDefinition Linux Parameters - log
Configuration TaskDefinition Log Configuration - memory Integer
- The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
- memory
Reservation Integer - mount
Points List<TaskDefinition Mount Point> - port
Mappings List<TaskDefinition Port Mapping> - Port mappings allow containers to access ports on the host container instance to send or receive traffic.
- privileged Boolean
- pseudo
Terminal Boolean - readonly
Root BooleanFilesystem - repository
Credentials TaskDefinition Repository Credentials - resource
Requirements List<TaskDefinition Resource Requirement> - secrets
List<Task
Definition Secret> - start
Timeout Integer - stop
Timeout Integer - system
Controls List<TaskDefinition System Control> - ulimits
List<Task
Definition Ulimit> - user String
- volumes
From List<TaskDefinition Volume From> - working
Directory String
- image string
- The image used to start a container. This string is passed directly to the Docker daemon.
- name string
- The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
- command string[]
- cpu number
- depends
On TaskDefinition Container Dependency[] - disable
Networking boolean - dns
Search string[]Domains - dns
Servers string[] - docker
Labels any - docker
Security string[]Options - entry
Point string[] - environment
Task
Definition Key Value Pair[] - The environment variables to pass to a container
- environment
Files TaskDefinition Environment File[] - The list of one or more files that contain the environment variables to pass to a container
- essential boolean
- extra
Hosts TaskDefinition Host Entry[] - firelens
Configuration TaskDefinition Firelens Configuration - health
Check TaskDefinition Health Check - hostname string
- interactive boolean
- links string[]
- linux
Parameters TaskDefinition Linux Parameters - log
Configuration TaskDefinition Log Configuration - memory number
- The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
- memory
Reservation number - mount
Points TaskDefinition Mount Point[] - port
Mappings TaskDefinition Port Mapping[] - Port mappings allow containers to access ports on the host container instance to send or receive traffic.
- privileged boolean
- pseudo
Terminal boolean - readonly
Root booleanFilesystem - repository
Credentials TaskDefinition Repository Credentials - resource
Requirements TaskDefinition Resource Requirement[] - secrets
Task
Definition Secret[] - start
Timeout number - stop
Timeout number - system
Controls TaskDefinition System Control[] - ulimits
Task
Definition Ulimit[] - user string
- volumes
From TaskDefinition Volume From[] - working
Directory string
- image str
- The image used to start a container. This string is passed directly to the Docker daemon.
- name str
- The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
- command Sequence[str]
- cpu int
- depends_
on Sequence[TaskDefinition Container Dependency] - disable_
networking bool - dns_
search_ Sequence[str]domains - dns_
servers Sequence[str] - docker_
labels Any - docker_
security_ Sequence[str]options - entry_
point Sequence[str] - environment
Sequence[Task
Definition Key Value Pair] - The environment variables to pass to a container
- environment_
files Sequence[TaskDefinition Environment File] - The list of one or more files that contain the environment variables to pass to a container
- essential bool
- extra_
hosts Sequence[TaskDefinition Host Entry] - firelens_
configuration TaskDefinition Firelens Configuration - health_
check TaskDefinition Health Check - hostname str
- interactive bool
- links Sequence[str]
- linux_
parameters TaskDefinition Linux Parameters - log_
configuration TaskDefinition Log Configuration - memory int
- The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
- memory_
reservation int - mount_
points Sequence[TaskDefinition Mount Point] - port_
mappings Sequence[TaskDefinition Port Mapping] - Port mappings allow containers to access ports on the host container instance to send or receive traffic.
- privileged bool
- pseudo_
terminal bool - readonly_
root_ boolfilesystem - repository_
credentials TaskDefinition Repository Credentials - resource_
requirements Sequence[TaskDefinition Resource Requirement] - secrets
Sequence[Task
Definition Secret] - start_
timeout int - stop_
timeout int - system_
controls Sequence[TaskDefinition System Control] - ulimits
Sequence[Task
Definition Ulimit] - user str
- volumes_
from Sequence[TaskDefinition Volume From] - working_
directory str
- image String
- The image used to start a container. This string is passed directly to the Docker daemon.
- name String
- The name of a container. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed
- command List<String>
- cpu Number
- depends
On List<Property Map> - disable
Networking Boolean - dns
Search List<String>Domains - dns
Servers List<String> - docker
Labels Any - docker
Security List<String>Options - entry
Point List<String> - environment List<Property Map>
- The environment variables to pass to a container
- environment
Files List<Property Map> - The list of one or more files that contain the environment variables to pass to a container
- essential Boolean
- extra
Hosts List<Property Map> - firelens
Configuration Property Map - health
Check Property Map - hostname String
- interactive Boolean
- links List<String>
- linux
Parameters Property Map - log
Configuration Property Map - memory Number
- The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed.
- memory
Reservation Number - mount
Points List<Property Map> - port
Mappings List<Property Map> - Port mappings allow containers to access ports on the host container instance to send or receive traffic.
- privileged Boolean
- pseudo
Terminal Boolean - readonly
Root BooleanFilesystem - repository
Credentials Property Map - resource
Requirements List<Property Map> - secrets List<Property Map>
- start
Timeout Number - stop
Timeout Number - system
Controls List<Property Map> - ulimits List<Property Map>
- user String
- volumes
From List<Property Map> - working
Directory String
TaskDefinitionContainerDependency, TaskDefinitionContainerDependencyArgs
- Condition string
- Container
Name string
- Condition string
- Container
Name string
- condition String
- container
Name String
- condition string
- container
Name string
- condition str
- container_
name str
- condition String
- container
Name String
TaskDefinitionDevice, TaskDefinitionDeviceArgs
- Container
Path string - Host
Path string - Permissions List<string>
- Container
Path string - Host
Path string - Permissions []string
- container
Path String - host
Path String - permissions List<String>
- container
Path string - host
Path string - permissions string[]
- container_
path str - host_
path str - permissions Sequence[str]
- container
Path String - host
Path String - permissions List<String>
TaskDefinitionEnvironmentFile, TaskDefinitionEnvironmentFileArgs
TaskDefinitionFirelensConfiguration, TaskDefinitionFirelensConfigurationArgs
TaskDefinitionHealthCheck, TaskDefinitionHealthCheckArgs
- Command List<string>
- A string array representing the command that the container runs to determine if it is healthy.
- Interval int
- The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
- Retries int
- The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
- Start
Period int - The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
- Timeout int
- The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
- Command []string
- A string array representing the command that the container runs to determine if it is healthy.
- Interval int
- The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
- Retries int
- The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
- Start
Period int - The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
- Timeout int
- The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
- command List<String>
- A string array representing the command that the container runs to determine if it is healthy.
- interval Integer
- The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
- retries Integer
- The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
- start
Period Integer - The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
- timeout Integer
- The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
- command string[]
- A string array representing the command that the container runs to determine if it is healthy.
- interval number
- The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
- retries number
- The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
- start
Period number - The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
- timeout number
- The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
- command Sequence[str]
- A string array representing the command that the container runs to determine if it is healthy.
- interval int
- The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
- retries int
- The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
- start_
period int - The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
- timeout int
- The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
- command List<String>
- A string array representing the command that the container runs to determine if it is healthy.
- interval Number
- The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
- retries Number
- The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is three retries.
- start
Period Number - The optional grace period within which to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod is disabled by default.
- timeout Number
- The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5 seconds.
TaskDefinitionHostEntry, TaskDefinitionHostEntryArgs
- hostname str
- ip_
address str
TaskDefinitionKernelCapabilities, TaskDefinitionKernelCapabilitiesArgs
TaskDefinitionKeyValuePair, TaskDefinitionKeyValuePairArgs
TaskDefinitionLinuxParameters, TaskDefinitionLinuxParametersArgs
- capabilities Property Map
- devices List<Property Map>
- init
Process BooleanEnabled - max
Swap Number - Number
- swappiness Number
- tmpfs List<Property Map>
TaskDefinitionLogConfiguration, TaskDefinitionLogConfigurationArgs
- Log
Driver string - Options object
- Secret
Options List<TaskDefinition Secret>
- Log
Driver string - Options interface{}
- Secret
Options []TaskDefinition Secret
- log
Driver String - options Object
- secret
Options List<TaskDefinition Secret>
- log
Driver String - options Any
- secret
Options List<Property Map>
TaskDefinitionMountPoint, TaskDefinitionMountPointArgs
- Container
Path string - Read
Only bool - Source
Volume string
- Container
Path string - Read
Only bool - Source
Volume string
- container
Path String - read
Only Boolean - source
Volume String
- container
Path string - read
Only boolean - source
Volume string
- container_
path str - read_
only bool - source_
volume str
- container
Path String - read
Only Boolean - source
Volume String
TaskDefinitionPortMapping, TaskDefinitionPortMappingArgs
- App
Protocol Pulumi.Awsx. Ecs. Task Definition Port Mapping App Protocol - Container
Port int - Container
Port stringRange - Host
Port int - Name string
- Protocol string
- Target
Group Pulumi.Aws. LB. Target Group - This type is defined in the AWS Classic package.
- App
Protocol TaskDefinition Port Mapping App Protocol - Container
Port int - Container
Port stringRange - Host
Port int - Name string
- Protocol string
- Target
Group TargetGroup - This type is defined in the AWS Classic package.
- app
Protocol TaskDefinition Port Mapping App Protocol - container
Port Integer - container
Port StringRange - host
Port Integer - name String
- protocol String
- target
Group TargetGroup - This type is defined in the AWS Classic package.
- app
Protocol TaskDefinition Port Mapping App Protocol - container
Port number - container
Port stringRange - host
Port number - name string
- protocol string
- target
Group pulumiAws.lb. Target Group - This type is defined in the AWS Classic package.
- app_
protocol TaskDefinition Port Mapping App Protocol - container_
port int - container_
port_ strrange - host_
port int - name str
- protocol str
- target_
group pulumi_aws.lb. Target Group - This type is defined in the AWS Classic package.
- app
Protocol "http" | "http2" | "grpc" - container
Port Number - container
Port StringRange - host
Port Number - name String
- protocol String
- target
Group aws:lb:TargetGroup - This type is defined in the AWS Classic package.
TaskDefinitionPortMappingAppProtocol, TaskDefinitionPortMappingAppProtocolArgs
- Http
- http
- Http2
- http2
- Grpc
- grpc
- Task
Definition Port Mapping App Protocol Http - http
- Task
Definition Port Mapping App Protocol Http2 - http2
- Task
Definition Port Mapping App Protocol Grpc - grpc
- Http
- http
- Http2
- http2
- Grpc
- grpc
- Http
- http
- Http2
- http2
- Grpc
- grpc
- HTTP
- http
- HTTP2
- http2
- GRPC
- grpc
- "http"
- http
- "http2"
- http2
- "grpc"
- grpc
TaskDefinitionRepositoryCredentials, TaskDefinitionRepositoryCredentialsArgs
- Credentials
Parameter string
- Credentials
Parameter string
- credentials
Parameter String
- credentials
Parameter string
- credentials
Parameter String
TaskDefinitionResourceRequirement, TaskDefinitionResourceRequirementArgs
TaskDefinitionSecret, TaskDefinitionSecretArgs
- name str
- value_
from str
TaskDefinitionSystemControl, TaskDefinitionSystemControlArgs
TaskDefinitionTmpfs, TaskDefinitionTmpfsArgs
- Size int
- Container
Path string - Mount
Options List<string>
- Size int
- Container
Path string - Mount
Options []string
- size Integer
- container
Path String - mount
Options List<String>
- size number
- container
Path string - mount
Options string[]
- size int
- container_
path str - mount_
options Sequence[str]
- size Number
- container
Path String - mount
Options List<String>
TaskDefinitionUlimit, TaskDefinitionUlimitArgs
- hard_
limit int - name str
- soft_
limit int
TaskDefinitionVolumeFrom, TaskDefinitionVolumeFromArgs
- Read
Only bool - Source
Container string
- Read
Only bool - Source
Container string
- read
Only Boolean - source
Container String
- read
Only boolean - source
Container string
- read_
only bool - source_
container str
- read
Only Boolean - source
Container String
Package Details
- Repository
- AWSx (Pulumi Crosswalk for AWS) pulumi/pulumi-awsx
- License
- Apache-2.0