Skip to content

ECS Task Definitions

Input map: task_definitions

Key fields:

  • family, cpu, memory, network_mode, requires_compatibilities
  • container_definitions: JSON string
  • execution_role_name, task_role_name (roles)

Example:

task_definitions = {
  SMTPTaskDefinition = {
    family = "smtp-forwarder"
    container_definitions = <<EOF
    [ { "name": "smtp-forwarder", "image": "grafana/smtprelay:latest" } ]
    EOF
    requires_compatibilities = ["FARGATE"]
    network_mode = "awsvpc"
    cpu = "256"
    memory = "512"
    execution_role_name = "ecsTaskExecutionRole"
    task_role_name      = "ecsTaskRole"
  }
}