Skip to content

TechHoldingLLC/terraform-aws-ecs-task-definition

Repository files navigation

Requirements

Name Version
terraform >= 1.0
aws >= 4.5

Providers

Name Version
aws >= 4.5

Modules

No modules.

Resources

Name Type
aws_ecs_task_definition.task resource
aws_iam_role.ecs_task_execution resource
aws_iam_role.task resource
aws_iam_role_policy.ecs_task_execution resource
aws_iam_role_policy_attachment.ecs_task_execution resource
aws_caller_identity.current data source
aws_kms_alias.ssm data source
aws_partition.current data source
aws_region.current data source

Inputs

Name Description Type Default Required
container_definitions Additional container definitions (sidecars) to use for the task. any [] no
ephemeral_storage_size value of ephemeral storage size in GB number null no
name ECS task definition name string n/a yes
network_mode Docker networking mode to use for the containers in the task. The valid values are none, bridge, awsvpc, and host. string "awsvpc" no
requires_compatibilities A set of launch types required by the task. The valid values are EC2 and FARGATE. list(string)
[
"FARGATE"
]
no
runtime_platform The operating system family and the CPU architecture to use for the task. The valid values for operatingSystemFamily are WINDOWS and LINUX. The valid values for cpuArchitecture are X86_64 and ARM64.
object({
operating_system_family = string
cpu_architecture = string
})
null no
ssm_kms_alias SSM kms key alias string "alias/aws/ssm" no
task_cpu ECS fargate task cpu number n/a yes
task_memory ECS fargate task memory number n/a yes
volumes A list of volume definitions.
list(object({
name = string
host_path = optional(string)

docker_volume_configuration = optional(object({
autoprovision = optional(bool)
driver = optional(string)
driver_opts = optional(map(any))
labels = optional(map(any))
scope = optional(string)
}))

efs_volume_configuration = optional(object({
file_system_id = string
root_directory = optional(string)
transit_encryption = optional(string)
transit_encryption_port = optional(number)

authorization_config = optional(object({
access_point_id = string
iam = optional(string)
}))
}))
}))
[] no

Outputs

Name Description
arn n/a
arn_without_revision n/a
execution_role_arn n/a
execution_role_name n/a
name n/a
revision n/a
role_arn n/a
role_name n/a

License

Apache 2 Licensed. See LICENSE for full details.

About

Terraform module for ECS Task Definition

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6

Languages