-
Notifications
You must be signed in to change notification settings - Fork 0
/
variables.tf
157 lines (129 loc) · 4.63 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
variable "environment" {
type = string
description = "Environment to use. Example: staging, production."
}
variable "domain_name" {
type = string
description = "The root domain name."
}
variable "app_subdomain_name" {
type = string
description = "The domain name for the public facing app. Application load balancer will be attached to this domain. Should be different for staging and production applications."
}
variable "alb_name" {
type = string
description = "Name of the application load balancer."
}
variable "alb_access_logs_prefix" {
type = string
description = "S3 bucket prefix for application load balancer access logs."
}
variable "alb_access_logs_expiry_days" {
type = number
description = "Number of days to retain application load balancer access logs."
}
variable "app_port" {
type = number
description = "The port number app is running on."
}
variable "alb_default_static_response" {
type = object({
content_type = string
encoded_message_body = string
status_code = string
})
description = "The default static response to return if no rules match in alb."
}
variable "vpc_id" {
type = string
description = "Identifier for AWS VPC where the resources will be created."
}
variable "http_https_ingress_sg_id" {
type = string
description = "Identifier for the security group allowing access to HTTP(80) and HTTPS(443) ingress. This is used for ingress traffic to load balancer."
}
variable "alb_subnets" {
type = list(string)
description = "List of subnet identifiers to associate subnets to load balancer."
}
variable "alb_aws_account_arn" {
type = string
description = "AWS account ARN for the account containing load balancer."
}
variable "alb_access_logs_bucket_name" {
type = string
description = "S3 bucket name which will be used to store load balancer access logs. Prefix <var.environment> will be added. The bucket name should be unique globally."
}
variable "target_group_healthcheck_enabled" {
type = bool
description = "Enable /Disable target health check."
default = true
}
variable "target_group_healthcheck_healthy_threshold" {
type = number
description = "Number of consecutive health checks successes required before considering an unhealthy target healthy."
default = 3
}
variable "target_group_healthcheck_unhealthy_threshold" {
type = number
description = "Number of consecutive health check failures required before considering the target unhealthy."
default = 3
}
variable "target_group_healthcheck_interval" {
type = number
description = "Approximate amount of time, in seconds, between health checks of an individual target."
default = 30
}
variable "target_group_healthcheck_matcher" {
type = string
description = "Response codes to use when checking for a healthy responses from a target."
}
variable "target_group_healthcheck_path" {
type = string
description = "Destination for the health check request."
}
variable "target_group_healthcheck_port" {
type = string
description = "Port to use to connect with the target."
default = "traffic-port"
}
variable "target_group_healthcheck_protocol" {
type = string
description = "Protocol to use to connect with the target."
default = "HTTP"
}
variable "target_group_healthcheck_timeout" {
type = number
description = "Amount of time, in seconds, during which no response means a failed health check."
default = 5
}
variable "target_group_deregistration_delay" {
type = number
description = "Amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused"
default = 300
}
variable "enable_failover_policy" {
type = bool
description = "Should enable/disable Failover policy for the subdomain record"
default = false
}
variable "primary_record_healthcheck_id" {
type = string
description = "For Failover Routing policy only. Healthcheck Id of primary record."
default = null
}
variable "secondary_record_alias_name" {
type = string
description = "For Failoverrouting policy only. Alias name for secondary record."
default = null
}
variable "secondary_record_zone_id" {
type = string
description = "For Failoverrouting policy only. Zone Id for secondary record."
default = null
}
variable "secondary_record_healthcheck_id" {
type = string
description = "For Failover Routing policy only. Healthcheck Id of secondary record."
default = null
}