-
Notifications
You must be signed in to change notification settings - Fork 71
/
variables.tf
263 lines (216 loc) · 7.05 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
# Container definitions are used in task definitions to describe the different containers that are launched as part of a task.
# https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html
variable "command" {
default = []
description = "The command that is passed to the container"
type = list(string)
}
variable "cpu" {
default = 256
description = "The number of cpu units reserved for the container"
type = number
}
variable "disableNetworking" {
default = false
description = "When this parameter is true, networking is disabled within the container"
}
variable "dnsSearchDomains" {
default = []
description = "A list of DNS search domains that are presented to the container"
type = list(string)
}
variable "dnsServers" {
default = []
description = "A list of DNS servers that are presented to the container"
type = list(string)
}
variable "dockerLabels" {
default = {}
description = "A key/value map of labels to add to the container"
type = map(string)
}
variable "dockerSecurityOptions" {
default = []
description = "A list of strings to provide custom labels for SELinux and AppArmor multi-level security systems"
type = list(string)
}
variable "entryPoint" {
default = []
description = "The entry point that is passed to the container"
type = list(string)
}
variable "environment" {
default = []
description = "The environment variables to pass to a container"
type = list(map(string))
}
variable "essential" {
default = true
description = "If the essential parameter of a container is marked as true, and that container fails or stops for any reason, all other containers that are part of the task are stopped"
}
variable "execution_role_arn" {
default = ""
description = "The Amazon Resource Name (ARN) of the task execution role that the Amazon ECS container agent and the Docker daemon can assume"
}
variable "extraHosts" {
default = []
description = "A list of hostnames and IP address mappings to append to the /etc/hosts file on the container"
type = list(object({
ipAddress = string
hostname = string
}))
}
variable "family" {
description = "You must specify a family for a task definition, which allows you to track multiple versions of the same task definition"
}
variable "healthCheck" {
default = {}
description = "The health check command and associated configuration parameters for the container"
type = any
}
variable "hostname" {
default = ""
description = "The hostname to use for your container"
}
variable "image" {
default = ""
description = "The image used to start a container"
}
variable "interactive" {
default = false
description = "When this parameter is true, this allows you to deploy containerized applications that require stdin or a tty to be allocated"
}
variable "ipc_mode" {
default = null
description = "The IPC resource namespace to use for the containers in the task"
}
variable "links" {
default = []
description = "The link parameter allows containers to communicate with each other without the need for port mappings"
type = list(string)
}
variable "linuxParameters" {
default = {}
description = "Linux-specific modifications that are applied to the container, such as Linux KernelCapabilities"
type = any
}
variable "logConfiguration" {
default = {}
description = "The log configuration specification for the container"
type = any
}
variable "memory" {
default = 512
description = "The hard limit (in MiB) of memory to present to the container"
type = number
}
variable "memoryReservation" {
default = 0
description = "The soft limit (in MiB) of memory to reserve for the container"
}
variable "mountPoints" {
default = []
description = "The mount points for data volumes in your container"
type = list(any)
}
variable "name" {
default = ""
description = "The name of a container"
}
variable "network_mode" {
default = "bridge"
description = "The Docker networking mode to use for the containers in the task"
}
variable "pid_mode" {
default = null
description = "The process namespace to use for the containers in the task"
}
variable "placement_constraints" {
default = []
description = "An array of placement constraint objects to use for the task"
type = list(object({
type = string
expression = string
}))
}
variable "portMappings" {
default = []
description = "The list of port mappings for the container"
type = list(any)
}
variable "privileged" {
default = false
description = "When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user)"
}
variable "pseudoTerminal" {
default = false
description = "When this parameter is true, a TTY is allocated"
}
variable "readonlyRootFilesystem" {
default = false
description = "When this parameter is true, the container is given read-only access to its root file system"
}
variable "register_task_definition" {
default = true
description = "Registers a new task definition from the supplied family and containerDefinitions"
}
variable "repositoryCredentials" {
default = {}
description = "The private repository authentication credentials to use"
type = map(string)
}
variable "requires_compatibilities" {
default = []
description = "The launch type required by the task"
type = list(string)
}
variable "resourceRequirements" {
default = []
description = "The type and amount of a resource to assign to a container"
type = list(string)
}
variable "secrets" {
default = []
description = "The secrets to pass to the container"
type = list(map(string))
}
variable "systemControls" {
default = []
description = "A list of namespaced kernel parameters to set in the container"
type = list(string)
}
variable "tags" {
default = {}
description = "The metadata that you apply to the task definition to help you categorize and organize them"
type = map(string)
}
variable "task_role_arn" {
default = ""
description = "The short name or full Amazon Resource Name (ARN) of the IAM role that containers in this task can assume"
}
variable "ulimits" {
default = []
description = "A list of ulimits to set in the container"
type = list(any)
}
variable "user" {
default = ""
description = "The user name to use inside the container"
}
variable "volumes" {
default = []
description = "A list of volume definitions in JSON format that containers in your task may use"
type = list(any)
}
variable "volumesFrom" {
default = []
description = "Data volumes to mount from another container"
type = list(object({
readOnly = bool
sourceContainer = string
}))
}
variable "workingDirectory" {
default = ""
description = "The working directory in which to run commands inside the container"
}