This module creates an ECS Fargate deployment that is compatible with Spinnaker's naming conventions and is intended to be used with synapsestudios/terraform-aws-ecs-fargate-stack
Name | Version |
---|---|
terraform | ~> 0.12.29 |
aws | ~> 2.53 |
Name | Version |
---|---|
aws | ~> 2.53 |
Name | Description | Type | Default | Required |
---|---|---|---|---|
cluster_name | Name of the cluster this deployment will run on. | string |
n/a | yes |
container_definitions | JSON Represention of the Docker definitions | string |
n/a | yes |
dns_zone | Name of the DNS zone to use with this deployment. | string |
n/a | yes |
ecs_cluster_arn | ARN of ECS Cluster for this deployment. | string |
n/a | yes |
environment_name | Name of environment. | string |
n/a | yes |
load_balancer_arn | ARN of the load balancer target group to assing this deployment to. | string |
n/a | yes |
name | Name of the deployment. | string |
n/a | yes |
security_groups | List of security group IDs to associate with this deployment. | list(string) |
n/a | yes |
subnets | List of subnet names this deployment will reside on. | list(string) |
n/a | yes |
tags | A mapping of tags to assign to the AWS resources. | map(string) |
n/a | yes |
vpc_id | ID of the VPC this deployment will use. | string |
n/a | yes |
alb_health_check_codes | HTTP responses for passing health checks. | list(number) |
[ |
no |
alb_health_check_path | The destination for the health check request. | string |
"/health-check" |
no |
alb_health_check_port | The port to use for connections from the ALB to the deployment. Valid values are either ports 1-65535, or traffic-port | string |
"traffic-port" |
no |
alb_host_names | ALB host header to associate with this deployment | list(string) |
[] |
no |
alb_listner_rule_priority | (Optional) The priority for the rule between 1 and 50000. Leaving it unset will automatically set the rule with next available priority after currently existing highest rule. A listener can't have multiple rules with the same priority. | number |
null |
no |
alb_path_patterns | ALB URL Path to match for this deployment | list(string) |
[ |
no |
alb_protocol | The protocol to use for routing traffic from the ALB to the deployment. Should be one of TCP, TLS, UDP, TCP_UDP, HTTP or HTTPS | string |
"HTTP" |
no |
alb_source_ips | List of CIDR address to match for this deployments ALB routing condition. Default is 0.0.0.0/0, ::/0 . This is used to allow only specific IP addresses access to deployment. | list(string) |
[ |
no |
alb_target_group_name | (Optional) Name of the ALB Target group to create. Default is <cluster_name>-<deployment_name> | string |
null |
no |
autoscaling | If true, autoscaling will be enabled on this deployment. | bool |
true |
no |
autoscaling_role | Name of the role allowed to perform autoscaling for this deployment. | string |
"role/aws-service-role/ecs.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ECSService" |
no |
cpu | Ammount of cpu shares allocate for deployment. | number |
256 |
no |
dns_names | DNS names to associate with this deployment | list(string) |
[] |
no |
dns_root_target | If true, a DNS record from the root of the DNS Zone will be routed to this deployment. | bool |
false |
no |
execution_role | (Optional) IAM Role that the Amazon ECS container agent and the Docker daemon can assume. | string |
"role/ecsTaskExecutionRole" |
no |
http_listener_arn | ARN of the HTTP listener to assoicate this deployment with. | string |
null |
no |
https_listener_arn | ARN of the HTTPS listener to assoicate this deployment with. | string |
null |
no |
managed | If true, Terraform will ensure task modifications and replica counts are fully managed by Terraform. | bool |
false |
no |
max_capacity | The max capacity of the scalable target. | number |
1 |
no |
memory | Ammount of memory to allocate for deployment. | number |
512 |
no |
min_capacity | The min capacity of the scalable target. | number |
1 |
no |
platform_version | Fargate Platform version. | string |
"1.3.0" |
no |
port_mappings | Key value pair mappings of Docker containers and TCP ports to be connected to the load balancer. | list(object({ container_name = string, container_port = number })) |
[] |
no |
private_dns | If true, private DNS zones will be used. | bool |
false |
no |
public_ip | If true a public IP Address will be assigned to each running task. | bool |
false |
no |
service_discovery_namespace_id | ID of the service discovery namespace to be used | string |
null |
no |
service_name | Name of the service to associate with deployment, if unset defaults to deployment name. | string |
null |
no |
task_role | IAM role that allows your Amazon ECS container task to make calls to other AWS services. | string |
"role/ecsTaskExecutionRole" |
no |
use_load_balancer | If true, this service will be bound to the load balancer. | bool |
true |
no |