resource "aws_acm_certificate" "api" { domain_name = var.domain_name validation_method = "DNS" tags = { Name = var.domain_name Project = "shoc-backend" } lifecycle { create_before_destroy = true } depends_on = [terraform_data.account_guard] } resource "aws_route53_record" "acm_validation" { for_each = { for dvo in aws_acm_certificate.api.domain_validation_options : dvo.domain_name => { name = dvo.resource_record_name record = dvo.resource_record_value type = dvo.resource_record_type } } allow_overwrite = true name = each.value.name records = [each.value.record] ttl = 60 type = each.value.type zone_id = var.hosted_zone_id } resource "aws_acm_certificate_validation" "api" { certificate_arn = aws_acm_certificate.api.arn validation_record_fqdns = [for record in aws_route53_record.acm_validation : record.fqdn] }