Skip to content

Commit dceb071

Browse files
committed
rollback alb lb
1 parent d5cc8a5 commit dceb071

File tree

2 files changed

+55
-55
lines changed

2 files changed

+55
-55
lines changed

operations/deployment/terraform/modules/aws/ecs/aws_ecs.tf

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,13 +129,13 @@ resource "aws_ecs_service" "ecs_service" {
129129
dynamic "load_balancer" {
130130
for_each = length(local.aws_ecs_container_port) > 0 ? [1] : []
131131
content {
132-
target_group_arn = aws_lb_target_group.lb_targets[count.index].id
132+
target_group_arn = aws_alb_target_group.lb_targets[count.index].id
133133
container_name = var.aws_ecs_task_name != "" ? local.aws_ecs_task_name[count.index] : "${local.aws_ecs_task_name[count.index]}${count.index}"
134134
container_port = local.aws_ecs_container_port[count.index]
135135
}
136136
}
137137

138-
depends_on = [aws_lb_listener.lb_listener, aws_lb_listener.lb_listener_ssl]
138+
depends_on = [aws_alb_listener.lb_listener, aws_alb_listener.lb_listener_ssl]
139139
}
140140

141141
resource "aws_ecs_service" "ecs_service_ignore_definition" {
@@ -156,7 +156,7 @@ resource "aws_ecs_service" "ecs_service_ignore_definition" {
156156
dynamic "load_balancer" {
157157
for_each = length(local.aws_ecs_container_port) > 0 ? [1] : []
158158
content {
159-
target_group_arn = aws_lb_target_group.lb_targets[count.index].id
159+
target_group_arn = aws_alb_target_group.lb_targets[count.index].id
160160
container_name = var.aws_ecs_task_name != "" ? local.aws_ecs_task_name[count.index] : "${local.aws_ecs_task_name[count.index]}${count.index}"
161161
container_port = local.aws_ecs_container_port[count.index]
162162
}
@@ -166,7 +166,7 @@ resource "aws_ecs_service" "ecs_service_ignore_definition" {
166166
ignore_changes = [task_definition]
167167
}
168168

169-
depends_on = [aws_lb_listener.lb_listener, aws_lb_listener.lb_listener_ssl]
169+
depends_on = [aws_alb_listener.lb_listener, aws_alb_listener.lb_listener_ssl]
170170
}
171171

172172
# Cloudwatch config

operations/deployment/terraform/modules/aws/ecs/aws_ecs_networking.tf

Lines changed: 51 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ locals {
44
aws_ecs_lb_port = var.aws_ecs_lb_port != "" ? [for n in split(",", var.aws_ecs_lb_port) : tonumber(n)] : local.aws_ecs_container_port
55
aws_ecs_sg_lb_port = distinct(local.aws_ecs_lb_port)
66
aws_ecs_lb_container_path = var.aws_ecs_lb_container_path != "" ? [for n in split(",", var.aws_ecs_lb_container_path) : n ] : []
7-
aws_ecs_lb_container_path_redirect = length(aws_lb_listener.https_redirect) > 0 || length(aws_lb_listener.http_redirect) > 0 ? local.aws_ecs_lb_container_path : []
7+
aws_ecs_lb_container_path_redirect = length(aws_alb_listener.https_redirect) > 0 || length(aws_alb_listener.http_redirect) > 0 ? local.aws_ecs_lb_container_path : []
88
}
99

1010
# Network part
@@ -35,7 +35,7 @@ resource "aws_security_group_rule" "incoming_alb" {
3535

3636
### ALB --- Make this optional -- Using ALB name intentionally. (To make clear is an A LB)
3737

38-
resource "aws_lb" "ecs_lb" {
38+
resource "aws_alb" "ecs_lb" {
3939
count = length(local.aws_ecs_sg_container_port) > 0 ? 1 : 0
4040
name = var.aws_resource_identifier_supershort
4141
subnets = var.aws_selected_subnets
@@ -46,13 +46,13 @@ resource "aws_lb" "ecs_lb" {
4646
}
4747
}
4848

49-
data "aws_lb" "selected_lb" {
49+
data "aws_alb" "selected_lb" {
5050
count = length(local.aws_ecs_sg_container_port)
5151
name = var.aws_resource_identifier_supershort
52-
depends_on = [aws_lb.ecs_lb]
52+
depends_on = [aws_alb.ecs_lb]
5353
}
5454

55-
resource "aws_lb_target_group" "lb_targets" {
55+
resource "aws_alb_target_group" "lb_targets" {
5656
count = length(local.aws_ecs_container_port)
5757
name = "${var.aws_resource_identifier_supershort}${count.index}"
5858
port = local.aws_ecs_container_port[count.index]
@@ -69,51 +69,51 @@ resource "aws_lb_target_group" "lb_targets" {
6969
resource "null_resource" "http_redirect_dep" {
7070
triggers = {
7171
id = (
72-
length(aws_lb_listener.http_redirect) > 0
73-
) ? aws_lb_listener.http_redirect[0].id : "none"
72+
length(aws_alb_listener.http_redirect) > 0
73+
) ? aws_alb_listener.http_redirect[0].id : "none"
7474
}
7575
}
7676

77-
resource "aws_lb_listener" "lb_listener_ssl" {
77+
resource "aws_alb_listener" "lb_listener_ssl" {
7878
count = var.aws_certificate_enabled ? length(local.aws_ecs_lb_port) : 0
79-
load_balancer_arn = aws_lb.ecs_lb[0].id
79+
load_balancer_arn = aws_alb.ecs_lb[0].id
8080
port = local.aws_ecs_lb_port[count.index]
8181
# https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html
8282
ssl_policy = var.aws_ecs_lb_ssl_policy
8383
protocol = "HTTPS"
8484
certificate_arn = var.aws_certificates_selected_arn
8585
default_action {
86-
target_group_arn = aws_lb_target_group.lb_targets[count.index].id
86+
target_group_arn = aws_alb_target_group.lb_targets[count.index].id
8787
type = "forward"
8888
}
8989
lifecycle {
9090
replace_triggered_by = [null_resource.http_redirect_dep.id]
9191
}
92-
depends_on = [ aws_lb_listener.http_redirect ]
92+
depends_on = [ aws_alb_listener.http_redirect ]
9393
}
9494

95-
resource "aws_lb_listener" "lb_listener" {
95+
resource "aws_alb_listener" "lb_listener" {
9696
count = var.aws_certificate_enabled ? 0 : length(local.aws_ecs_lb_port)
97-
load_balancer_arn = aws_lb.ecs_lb[0].id
97+
load_balancer_arn = aws_alb.ecs_lb[0].id
9898
port = local.aws_ecs_lb_port[count.index]
9999
protocol = "HTTP"
100100
default_action {
101-
target_group_arn = aws_lb_target_group.lb_targets[count.index].id
101+
target_group_arn = aws_alb_target_group.lb_targets[count.index].id
102102
type = "forward"
103103
}
104104
lifecycle {
105105
replace_triggered_by = [null_resource.http_redirect_dep.id]
106106
}
107-
depends_on = [ aws_lb_listener.http_redirect ]
107+
depends_on = [ aws_alb_listener.http_redirect ]
108108
}
109109

110-
resource "aws_lb_listener_rule" "redirect_based_on_path" {
110+
resource "aws_alb_listener_rule" "redirect_based_on_path" {
111111
for_each = { for idx, path in local.aws_ecs_lb_container_path : idx => path if length(path) > 0 }
112-
listener_arn = var.aws_certificate_enabled ? aws_lb_listener.lb_listener_ssl[0].arn : aws_lb_listener.lb_listener[0].arn
112+
listener_arn = var.aws_certificate_enabled ? aws_alb_listener.lb_listener_ssl[0].arn : aws_alb_listener.lb_listener[0].arn
113113

114114
action {
115115
type = "forward"
116-
target_group_arn = aws_lb_target_group.lb_targets[each.key + 1].arn
116+
target_group_arn = aws_alb_target_group.lb_targets[each.key + 1].arn
117117
}
118118

119119
condition {
@@ -123,9 +123,9 @@ resource "aws_lb_listener_rule" "redirect_based_on_path" {
123123
}
124124
}
125125

126-
resource "aws_lb_listener" "http_redirect" {
126+
resource "aws_alb_listener" "http_redirect" {
127127
count = var.aws_ecs_lb_redirect_enable && !contains(local.aws_ecs_lb_port,80) && var.aws_certificate_enabled ? 1 : 0
128-
load_balancer_arn = aws_lb.ecs_lb[0].id
128+
load_balancer_arn = aws_alb.ecs_lb[0].id
129129
port = "80"
130130
protocol = "HTTP"
131131

@@ -139,29 +139,29 @@ resource "aws_lb_listener" "http_redirect" {
139139
}
140140
}
141141
depends_on = [
142-
aws_lb.ecs_lb,
143-
aws_lb_target_group.lb_targets
142+
aws_alb.ecs_lb,
143+
aws_alb_target_group.lb_targets
144144
]
145145
}
146146

147-
resource "aws_lb_listener" "http_forward" {
147+
resource "aws_alb_listener" "http_forward" {
148148
count = var.aws_ecs_lb_redirect_enable && !contains(local.aws_ecs_lb_port,80) && !var.aws_certificate_enabled && !var.aws_ecs_lb_www_to_apex_redirect ? 1 : 0
149-
load_balancer_arn = aws_lb.ecs_lb[0].id
149+
load_balancer_arn = aws_alb.ecs_lb[0].id
150150
port = "80"
151151
protocol = "HTTP"
152152

153153
default_action {
154154
type = "forward"
155-
target_group_arn = aws_lb_target_group.lb_targets[0].id
155+
target_group_arn = aws_alb_target_group.lb_targets[0].id
156156
}
157157
depends_on = [
158-
aws_lb.ecs_lb,
159-
aws_lb_target_group.lb_targets
158+
aws_alb.ecs_lb,
159+
aws_alb_target_group.lb_targets
160160
]
161161
}
162162

163163
resource "aws_security_group_rule" "incoming_alb_http" {
164-
count = length(aws_lb_listener.http_redirect) + length(aws_lb_listener.http_forward) + length(aws_lb_listener.http_www_redirect)
164+
count = length(aws_alb_listener.http_redirect) + length(aws_alb_listener.http_forward) + length(aws_alb_listener.http_www_redirect)
165165
type = "ingress"
166166
from_port = 80
167167
to_port = 80
@@ -170,33 +170,33 @@ resource "aws_security_group_rule" "incoming_alb_http" {
170170
security_group_id = aws_security_group.ecs_lb_sg.id
171171
}
172172

173-
resource "aws_lb_listener" "https_redirect" {
173+
resource "aws_alb_listener" "https_redirect" {
174174
count = var.aws_ecs_lb_redirect_enable && !contains(local.aws_ecs_lb_port,443) && var.aws_certificate_enabled ? 1 : 0
175175
#count = var.aws_ecs_lb_redirect_enable && !contains(local.aws_ecs_lb_port,443) ? var.aws_certificates_selected_arn != "" ? 1 : 0 : 0
176176
#count = var.aws_ecs_lb_redirect_enable && var.aws_certificates_selected_arn != "" && !contains(local.aws_ecs_lb_port,443) ? 1 : 0
177-
load_balancer_arn = aws_lb.ecs_lb[0].id
177+
load_balancer_arn = aws_alb.ecs_lb[0].id
178178
port = "443"
179179
protocol = "HTTPS"
180180
certificate_arn = var.aws_certificates_selected_arn
181181
ssl_policy = var.aws_certificates_selected_arn != "" ? var.aws_ecs_lb_ssl_policy : "" # https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html
182182

183183
default_action {
184-
target_group_arn = aws_lb_target_group.lb_targets[0].id
184+
target_group_arn = aws_alb_target_group.lb_targets[0].id
185185
type = "forward"
186186
}
187187
}
188188

189-
resource "aws_lb_listener_rule" "redirect_based_on_path_for_http" {
189+
resource "aws_alb_listener_rule" "redirect_based_on_path_for_http" {
190190
for_each = { for idx, path in local.aws_ecs_lb_container_path_redirect : idx => path if length(path) > 0 }
191-
#listener_arn = var.aws_certificates_selected_arn != "" ? aws_lb_listener.https_redirect[0].arn : aws_lb_listener.http_redirect[0].arn
192-
listener_arn = var.aws_certificate_enabled ? aws_lb_listener.https_redirect[0].arn : (
193-
length(aws_lb_listener.http_redirect) > 0 ? aws_lb_listener.http_redirect[0].arn : (
194-
length(aws_lb_listener.http_forward) > 0 ? aws_lb_listener.http_forward[0].arn : aws_lb_listener.http_www_redirect[0].arn
191+
#listener_arn = var.aws_certificates_selected_arn != "" ? aws_alb_listener.https_redirect[0].arn : aws_alb_listener.http_redirect[0].arn
192+
listener_arn = var.aws_certificate_enabled ? aws_alb_listener.https_redirect[0].arn : (
193+
length(aws_alb_listener.http_redirect) > 0 ? aws_alb_listener.http_redirect[0].arn : (
194+
length(aws_alb_listener.http_forward) > 0 ? aws_alb_listener.http_forward[0].arn : aws_alb_listener.http_www_redirect[0].arn
195195
)
196196
)
197197
action {
198198
type = "forward"
199-
target_group_arn = aws_lb_target_group.lb_targets[each.key + 1].arn
199+
target_group_arn = aws_alb_target_group.lb_targets[each.key + 1].arn
200200
}
201201

202202
condition {
@@ -206,9 +206,9 @@ resource "aws_lb_listener_rule" "redirect_based_on_path_for_http" {
206206
}
207207
}
208208

209-
resource "aws_lb_listener" "http_www_redirect" {
209+
resource "aws_alb_listener" "http_www_redirect" {
210210
count = var.aws_ecs_lb_redirect_enable && !contains(local.aws_ecs_lb_port,80) && !var.aws_certificate_enabled && var.aws_ecs_lb_www_to_apex_redirect ? 1 : 0
211-
load_balancer_arn = aws_lb.ecs_lb[0].id
211+
load_balancer_arn = aws_alb.ecs_lb[0].id
212212
port = "80"
213213
protocol = "HTTP"
214214

@@ -222,14 +222,14 @@ resource "aws_lb_listener" "http_www_redirect" {
222222
}
223223
}
224224
depends_on = [
225-
aws_lb.ecs_lb,
226-
aws_lb_target_group.lb_targets
225+
aws_alb.ecs_lb,
226+
aws_alb_target_group.lb_targets
227227
]
228228
}
229229

230230
resource "aws_lb_listener_rule" "http_forward_apex" {
231231
count = var.aws_ecs_lb_www_to_apex_redirect && var.aws_r53_domain_name != "" && !var.aws_certificate_enabled ? 1 : 0
232-
listener_arn = aws_lb_listener.http_www_redirect[0].arn
232+
listener_arn = aws_alb_listener.http_www_redirect[0].arn
233233
priority = 20
234234

235235
condition {
@@ -240,13 +240,13 @@ resource "aws_lb_listener_rule" "http_forward_apex" {
240240

241241
action {
242242
type = "forward"
243-
target_group_arn = aws_lb_target_group.lb_targets[0].id
243+
target_group_arn = aws_alb_target_group.lb_targets[0].id
244244
}
245245
}
246246

247247
resource "aws_lb_listener_rule" "redirect_www_to_apex" {
248248
count = var.aws_ecs_lb_www_to_apex_redirect && var.aws_r53_domain_name != "" ? 1 : 0
249-
listener_arn = var.aws_certificate_enabled ? aws_lb_listener.https_redirect[0].arn : aws_lb_listener.http_www_redirect[0].arn
249+
listener_arn = var.aws_certificate_enabled ? aws_alb_listener.https_redirect[0].arn : aws_alb_listener.http_www_redirect[0].arn
250250
priority = 10
251251

252252
condition {
@@ -270,7 +270,7 @@ resource "aws_lb_listener_rule" "redirect_www_to_apex" {
270270
}
271271

272272
resource "aws_security_group_rule" "incoming_alb_https" {
273-
count = length(aws_lb_listener.https_redirect)
273+
count = length(aws_alb_listener.https_redirect)
274274
type = "ingress"
275275
from_port = 443
276276
to_port = 443
@@ -306,24 +306,24 @@ resource "aws_security_group_rule" "incoming_ecs_lb_ports" {
306306
}
307307

308308
output "load_balancer_dns" {
309-
value = length(local.aws_ecs_sg_container_port) > 0 ? aws_lb.ecs_lb[0].dns_name : ""
309+
value = length(local.aws_ecs_sg_container_port) > 0 ? aws_alb.ecs_lb[0].dns_name : ""
310310
}
311311

312312
output "load_balancer_port" {
313-
value = length(local.aws_ecs_sg_container_port) > 0 ? (var.aws_certificate_enabled ? aws_lb_listener.lb_listener_ssl[0].port : aws_lb_listener.lb_listener[0].port) : ""
313+
value = length(local.aws_ecs_sg_container_port) > 0 ? (var.aws_certificate_enabled ? aws_alb_listener.lb_listener_ssl[0].port : aws_alb_listener.lb_listener[0].port) : ""
314314
}
315315

316316
output "load_balancer_protocol" {
317-
value = length(local.aws_ecs_sg_container_port) > 0 ? (var.aws_certificate_enabled ? aws_lb_listener.lb_listener_ssl[0].protocol : aws_lb_listener.lb_listener[0].protocol) : ""
317+
value = length(local.aws_ecs_sg_container_port) > 0 ? (var.aws_certificate_enabled ? aws_alb_listener.lb_listener_ssl[0].protocol : aws_alb_listener.lb_listener[0].protocol) : ""
318318
}
319319

320320
output "load_balancer_zone_id" {
321-
#value = aws_lb.ecs_lb[0].zone_id
322-
value = length(local.aws_ecs_sg_container_port) > 0 ? data.aws_lb.selected_lb[0].zone_id : ""
321+
#value = aws_alb.ecs_lb[0].zone_id
322+
value = length(local.aws_ecs_sg_container_port) > 0 ? data.aws_alb.selected_lb[0].zone_id : ""
323323
}
324324

325325
output "load_balancer_arn" {
326-
value = length(local.aws_ecs_sg_container_port) > 0 ? aws_lb.ecs_lb[0].arn : ""
326+
value = length(local.aws_ecs_sg_container_port) > 0 ? aws_alb.ecs_lb[0].arn : ""
327327
}
328328

329329
output "ecs_sg_id" {

0 commit comments

Comments
 (0)