1
1
locals {
2
2
enabled = module. this . enabled
3
+ zone_name = var. zone_name == " " ? " ${ var . domain_name } ." : var. zone_name
3
4
process_domain_validation_options = local. enabled && var. process_domain_validation_options && var. validation_method == " DNS"
4
5
domain_validation_options_set = local. process_domain_validation_options ? aws_acm_certificate. default [0 ]. domain_validation_options : toset ([])
5
6
public_enabled = var. certificate_authority_arn == null
6
- private_enabled = ! local. public_enabled
7
-
8
- all_domains = concat (
9
- [var . domain_name ],
10
- var. subject_alternative_names
11
- )
12
- domain_to_zone = {
13
- for domain in local . all_domains :
14
- domain = > length (split (" ." , domain)) > 2 ? join (" ." , slice (split (" ." , domain), 1 , length (split (" ." , domain)))) : domain
15
- }
16
- unique_zones = distinct (values (local. domain_to_zone ))
7
+ private_enabled = ! local. public_enabled
17
8
}
18
9
19
10
resource "aws_acm_certificate" "default" {
@@ -37,9 +28,9 @@ resource "aws_acm_certificate" "default" {
37
28
}
38
29
39
30
data "aws_route53_zone" "default" {
40
- for_each = local. process_domain_validation_options ? toset (local . unique_zones ) : toset ([])
31
+ count = local. process_domain_validation_options ? 1 : 0
41
32
zone_id = var. zone_id
42
- name = try (length (var. zone_id ), 0 ) == 0 ? (var . zone_name == " " ? each . key : var . zone_name ) : null
33
+ name = try (length (var. zone_id ), 0 ) == 0 ? local . zone_name : null
43
34
private_zone = local. private_enabled
44
35
}
45
36
@@ -51,7 +42,7 @@ resource "aws_route53_record" "default" {
51
42
type = dvo.resource_record_type
52
43
}
53
44
}
54
- zone_id = data. aws_route53_zone . default [ local . domain_to_zone [ each . key ]] . id
45
+ zone_id = join ( " " , data. aws_route53_zone . default . * . zone_id )
55
46
ttl = var. ttl
56
47
allow_overwrite = true
57
48
name = each. value . name
0 commit comments