additional_ecs_service_exec_policy_arns |
ARNs for additional ECS Service Execution Role policies |
list(string) |
[] |
no |
additional_ecs_task_policy_arns |
ARNs for additional ECS task policies |
list(string) |
[] |
no |
alb_security_group_id |
ID for ALB Security Group |
string |
n/a |
yes |
assign_ecs_service_public_ip |
Assigns a public IP to your ECS service. Set true if using fargate, see https://aws.amazon.com/premiumsupport/knowledge-center/ecs-pull-container-api-error-ecr/ |
bool |
false |
no |
cluster_name |
Name of ECS cluster |
string |
n/a |
yes |
container_image |
Container image, ie 203583890406.dkr.ecr.us-west-1.amazonaws.com/api-integrations:git-34752db |
string |
"busybox" |
no |
container_name |
Defaults to api-<var.name> |
string |
null |
no |
container_port |
Port on Container that main process is listening on |
number |
n/a |
yes |
ecs_execution_role |
ECS execution role. If specified none will be created |
string |
"" |
no |
ecs_task_role |
ECS task execution role. If specified none will be created |
string |
"" |
no |
environment_variables |
The environment variables to pass to the container. This is a list of maps |
list(object({ name = string value = string })) |
null |
no |
health_check |
Target group health check, for LB to assess service health See https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#health_check |
object({ healthy_threshold = number interval = number path = string port = string protocol = string unhealthy_threshold = number }) |
{ "healthy_threshold": 3, "interval": 30, "path": "/", "port": "traffic-port", "protocol": "HTTP", "unhealthy_threshold": 3 } |
no |
host_headers |
The hostname in the request which acts as condition for listener. See https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_listener_rule#host_header |
list(string) |
n/a |
yes |
internal_protocol |
Protocol for traffic between the ALB and ECS. Should be one of [TCP, TLS, UDP, TCP_UDP, HTTP, HTTPS] |
string |
"HTTP" |
no |
launch_type |
ECS service launch type: FARGATE | EC2 |
string |
"FARGATE" |
no |
listener_arn |
ARN of listener on ALB |
string |
n/a |
yes |
name |
Moniker to apply to all resources in module |
string |
n/a |
yes |
network_mode |
The Docker networking mode to use for the containers in the task. The valid values are none, bridge, awsvpc, and host. |
string |
"awsvpc" |
no |
secrets |
The secrets to pass to the container. This is a list of maps |
list(object({ name = string valueFrom = string })) |
null |
no |
security_group_ids |
List of Security Group IDs to apply to the ECS Service |
list(string) |
[] |
no |
service_registry_arn |
ARN of aws_service_discovery_service |
string |
null |
no |
subnets |
Subnets that should be added to ECS service network configuration |
list(string) |
[] |
no |
tags |
Resource Tags. BE VERBOSE. Should AT MINIMIUM contain; Name & Owner |
map(string) |
{} |
no |
target_group_port |
The port on which targets receive traffic on the Target Group |
number |
80 |
no |
task_cpu |
The number of cpu units used by the task. |
number |
1024 |
no |
task_def_arn |
Task definition arn |
string |
"" |
no |
task_desired_count |
Number of copies of task definition that should be running at any given time |
number |
1 |
no |
task_memory |
The amount (in MiB) of memory used by the task. |
number |
2048 |
no |
vpc_id |
VPC ID where resources will be created |
string |
n/a |
yes |