@@ -6,8 +6,7 @@ data "aws_route53_zone" "selected" {
66}
77
88data "aws_acm_certificate" "issued" {
9- # count = local.is_enabled_and_valid ? (!var.aws_r53_create_root_cert ? (!var.aws_r53_create_sub_cert ? (var.fqdn_provided ? 1 : 0) : 0) : 0) :0
10- for_each = (! var. aws_r53_create_root_cert && ! var. aws_r53_create_sub_cert && local. is_enabled_and_valid ) ? {
9+ for_each = (! var. aws_r53_create_root_cert && ! var. aws_r53_create_sub_cert && var. aws_r53_domain_name != " " ) ? {
1110 " domain" = var.aws_r53_domain_name,
1211 " wildcard" = " *.${ var . aws_r53_domain_name } " ,
1312 " sub" = " ${ var . aws_r53_sub_domain_name } .${ var . aws_r53_domain_name } "
@@ -18,7 +17,7 @@ data "aws_acm_certificate" "issued" {
1817
1918# This block will create and validate the root domain and www cert
2019resource "aws_acm_certificate" "root_domain" {
21- count = local . is_enabled_and_valid ? ( var. aws_r53_create_root_cert ? (var . aws_r53_domain_name != " " ? 1 : 0 ) : 0 ) : 0
20+ count = var. aws_r53_domain_name != " " && var . aws_r53_create_root_cert ? 1 : 0
2221 domain_name = var. aws_r53_domain_name
2322 subject_alternative_names = [" *.${ var . aws_r53_domain_name } " , " ${ var . aws_r53_domain_name } " ]
2423 validation_method = " DNS"
@@ -28,7 +27,7 @@ resource "aws_acm_certificate" "root_domain" {
2827}
2928
3029resource "aws_route53_record" "root_domain" {
31- count = local . is_enabled_and_valid ? ( var. aws_r53_create_root_cert ? (var . aws_r53_domain_name != " " ? 1 : 0 ) : 0 ) : 0
30+ count = var. aws_r53_domain_name != " " && var . aws_r53_create_root_cert ? 1 : 0
3231 allow_overwrite = true
3332 name = tolist (aws_acm_certificate. root_domain [0 ]. domain_validation_options )[0 ]. resource_record_name
3433 records = [tolist (aws_acm_certificate. root_domain [0 ]. domain_validation_options )[0 ]. resource_record_value ]
@@ -38,15 +37,15 @@ resource "aws_route53_record" "root_domain" {
3837}
3938
4039resource "aws_acm_certificate_validation" "root_domain" {
41- count = local . is_enabled_and_valid ? ( var. aws_r53_create_root_cert ? (var . aws_r53_domain_name != " " ? 1 : 0 ) : 0 ) : 0
40+ count = var. aws_r53_domain_name != " " && var . aws_r53_create_root_cert ? 1 : 0
4241 certificate_arn = aws_acm_certificate. root_domain [0 ]. arn
4342 validation_record_fqdns = [for record in aws_route53_record . root_domain : record . fqdn ]
4443}
4544
4645
4746# This block will create and validate the sub domain cert ONLY
4847resource "aws_acm_certificate" "sub_domain" {
49- count = local . is_enabled_and_valid ? ( var. aws_r53_create_sub_cert ? ( var. aws_r53_domain_name != " " ? ( var. aws_r53_sub_domain_name != " " ? (var . aws_r53_create_root_cert ? 0 : 1 ) : 0 ) : 0 ) : 0 ) : 0
48+ count = var . aws_r53_create_sub_cert && ! var. aws_r53_create_root_cert && var. aws_r53_domain_name != " " && var. aws_r53_sub_domain_name != " " ? 1 : 0
5049 domain_name = " ${ var . aws_r53_sub_domain_name } .${ var . aws_r53_domain_name } "
5150 validation_method = " DNS"
5251 lifecycle {
@@ -55,7 +54,7 @@ resource "aws_acm_certificate" "sub_domain" {
5554}
5655
5756resource "aws_route53_record" "sub_domain" {
58- count = local . is_enabled_and_valid ? ( var. aws_r53_create_sub_cert ? ( var. aws_r53_domain_name != " " ? ( var. aws_r53_sub_domain_name != " " ? (var . aws_r53_create_root_cert ? 0 : 1 ) : 0 ) : 0 ) : 0 ) : 0
57+ count = var . aws_r53_create_sub_cert && ! var. aws_r53_create_root_cert && var. aws_r53_domain_name != " " && var. aws_r53_sub_domain_name != " " ? 1 : 0
5958 allow_overwrite = true
6059 name = tolist (aws_acm_certificate. sub_domain [0 ]. domain_validation_options )[0 ]. resource_record_name
6160 records = [tolist (aws_acm_certificate. sub_domain [0 ]. domain_validation_options )[0 ]. resource_record_value ]
@@ -65,36 +64,21 @@ resource "aws_route53_record" "sub_domain" {
6564}
6665
6766resource "aws_acm_certificate_validation" "sub_domain" {
68- count = local . is_enabled_and_valid ? ( var. aws_r53_create_sub_cert ? ( var. aws_r53_domain_name != " " ? ( var. aws_r53_create_root_cert ? 0 : 1 ) : 0 ) : 0 ) : 0
67+ count = var . aws_r53_create_sub_cert && ! var. aws_r53_create_root_cert && var. aws_r53_domain_name != " " && var. aws_r53_sub_domain_name != " " ? 1 : 0
6968 certificate_arn = aws_acm_certificate. sub_domain [0 ]. arn
7069 validation_record_fqdns = [for record in aws_route53_record . sub_domain : record . fqdn ]
7170}
7271
7372locals {
74- is_enabled_and_valid = var. aws_r53_domain_name != " " ? true : false
73+ acm_arn = try (data. aws_acm_certificate . issued [" domain" ]. arn , try (data. aws_acm_certificate . issued [" wildcard" ]. arn , data. aws_acm_certificate . issued [" sub" ]. arn , " " ))
74+
7575 selected_arn = (
76- local. is_enabled_and_valid ?
77- (var. aws_r53_cert_arn != " " ? var. aws_r53_cert_arn :
78- (! var. aws_r53_create_root_cert ?
79- (! var. aws_r53_create_sub_cert ?
80- (var. fqdn_provided ? local. acm_arn : " " )
81- : aws_acm_certificate. sub_domain [0 ]. arn
82- ) : aws_acm_certificate. root_domain [0 ]. arn
83- )
84- ) : " "
76+ var. aws_r53_cert_arn != " " ? var. aws_r53_cert_arn :
77+ var. aws_r53_create_root_cert ? aws_acm_certificate. root_domain [0 ]. arn :
78+ var. aws_r53_create_sub_cert ? aws_acm_certificate. sub_domain [0 ]. arn :
79+ var. fqdn_provided ? local. acm_arn :
80+ " "
8581 )
86- cert_available = (
87- local. is_enabled_and_valid ?
88- (var. aws_r53_cert_arn != " " ? true :
89- (! var. aws_r53_create_root_cert ?
90- (! var. aws_r53_create_sub_cert ?
91- (var. fqdn_provided ? true : false )
92- : true
93- ) : true
94- )
95- ) : false
96- )
97- acm_arn = try (data. aws_acm_certificate . issued [" domain" ]. arn , try (data. aws_acm_certificate . issued [" wildcard" ]. arn , data. aws_acm_certificate . issued [" sub" ]. arn , " " ))
9882}
9983
10084output "selected_arn" {
0 commit comments