Skip to content

Commit ee35788

Browse files
committed
Supporting addtional SSL certificates
1 parent c51c4a0 commit ee35788

2 files changed

Lines changed: 29 additions & 11 deletions

File tree

main.tf

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,27 @@ resource "aws_lb_listener" "lb_https_listeners" {
181181
}
182182
}
183183

184-
# TODO - Think a way to add multiple additional certificates to multiple listeners.
185-
# resource "aws_lb_listener_certificate" "additional_certificates_for_https_listeners" {
186-
# for_each = toset(var.additional_certificates_arn_for_https_listeners)
187-
# listener_arn = aws_lb_listener.lb_https_listeners.arn
188-
# certificate_arn = each.key
189-
# }
184+
locals {
185+
list_maps_listener_certificate_arns = flatten([
186+
for cert_arn in var.additional_certificates_arn_for_https_listeners : [
187+
for listener in aws_lb_listener.lb_https_listeners : {
188+
name = "${listener}-${cert_arn}"
189+
listener_arn = listener.arn
190+
certificate_arn = cert_arn
191+
}
192+
]
193+
])
194+
195+
map_listener_certificate_arns = {
196+
for obj in local.list_maps_listener_certificate_arns : obj.name => {
197+
listener_arn = obj.listener_arn,
198+
certificate_arn = obj.certificate_arn
199+
}
200+
}
201+
}
202+
203+
resource "aws_lb_listener_certificate" "additional_certificates_for_https_listeners" {
204+
for_each = local.map_listener_certificate_arns
205+
listener_arn = each.value.listener_arn
206+
certificate_arn = each.value.certificate_arn
207+
}

variables.tf

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,8 @@ variable "default_certificate_arn" {
211211
default = null
212212
}
213213

214-
# variable "additional_certificates_arn_for_https_listeners" {
215-
# description = "(Optional) List of SSL server certificate ARNs for HTTPS listener. Use it if you need to set additional certificates besides default_certificate_arn"
216-
# type = list
217-
# default = []
218-
# }
214+
variable "additional_certificates_arn_for_https_listeners" {
215+
description = "(Optional) List of SSL server certificate ARNs for HTTPS listener. Use it if you need to set additional certificates besides default_certificate_arn"
216+
type = list
217+
default = []
218+
}

0 commit comments

Comments
 (0)