-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvariables.tf
105 lines (91 loc) · 3.72 KB
/
variables.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
variable "name" {
description = "Name to give to the ECS Service."
type = string
}
variable "cluster_arn" {
description = "ARN of the ECS cluster on which to run the service. If a cluster is not specified, the default cluster is assumed."
default = null
type = string
}
variable "task_definition_arn" {
description = "Family and revision (family:revision) or full ARN of the task definition to be run in the service. Required unless using the EXTERNAL deployment controller. If a revision is not specified, the latest ACTIVE revision is used."
default = null
type = string
}
variable "desired_count" {
description = "Number of instances of the task definition to place and keep running."
default = 0
type = number
}
variable "propagate_tags" {
description = "Specifies whether to propagate the tags from the task definition or the service to the tasks. The valid values are SERVICE and TASK_DEFINITION."
default = "TASK_DEFINITION"
type = string
}
variable "enable_execute_command" {
description = "(Optional) Specifies whether to enable Amazon ECS Exec for the tasks within the service."
default = true
type = bool
}
variable "launch_type" {
description = "Launch type on which to run your service. The valid values are EC2, FARGATE, and EXTERNAL."
default = "FARGATE"
type = string
}
variable "health_check_grace_period" {
description = "Seconds to ignore failing load balancer health checks on newly instantiated tasks to prevent premature shutdown, up to 2147483647. Only valid for services configured to use load balancers."
default = 10
type = number
}
variable "deployment_maximum_percent" {
description = "(Optional) Upper limit (as a percentage of the service's desiredCount) of the number of running tasks that can be running in a service during a deployment. Not valid when using the DAEMON scheduling strategy."
default = 200
type = number
}
variable "deployment_minimum_percent" {
description = "(Optional) Lower limit (as a percentage of the service's desiredCount) of the number of running tasks that must remain running and healthy in a service during a deployment."
default = 100
type = number
}
variable "service_registry" {
description = "The details of the service discovery registry to associate with this service."
default = null
type = object({
arn = string
port = optional(number)
container_port = optional(number)
container_name = optional(string)
})
}
variable "network_config" {
description = "Network configuration for the service."
default = null
type = object({
subnets = list(string)
security_groups = list(string)
assign_public_ip = optional(bool)
})
}
variable "load_balancer" {
description = "Details of the load balancer to be associated to the service."
default = null
type = object({
target_group_arn = string
container_name = string
container_port = number
})
}
variable "capacity_provider_strategy" {
description = "(Optional) Capacity provider strategies to use for the service. Can be one or more. These can be updated without destroying and recreating the service only if force_new_deployment = true and not changing from 0 capacity_provider_strategy blocks to greater than 0, or vice versa. "
default = []
type = list(object({
base = number
name = string
weight = number
}))
}
variable "tags" {
description = "A map of tags to assign to the target group. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level."
type = map(any)
default = null
}