diff --git a/README.md b/README.md index b653162..a185a32 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,11 @@ module "acm" { source = "terraform-aws-modules/acm/aws" version = "~> 3.0" + providers = { + aws.acm = aws, + aws.dns = aws + } + domain_name = "my-domain.com" zone_id = "Z2ES7B9AZ6SHAE" @@ -34,6 +39,11 @@ module "acm" { source = "terraform-aws-modules/acm/aws" version = "~> 3.0" + providers = { + aws.acm = aws, + aws.dns = aws + } + domain_name = "weekly.tf" zone_id = "b7d259641bf30b89887c943ffc9d2138" @@ -66,7 +76,8 @@ module "acm" { source = "terraform-aws-modules/acm/aws" providers = { - aws = aws.us-east-1 + aws.acm = aws.us-east-1, + aws.dns = aws } domain_name = "my-domain.com" @@ -95,6 +106,11 @@ Sometimes you need to have a way to create ACM certificate conditionally but Ter module "acm" { source = "terraform-aws-modules/acm/aws" + providers = { + aws.acm = aws, + aws.dns = aws + } + create_certificate = false # ... omitted } @@ -128,7 +144,8 @@ module "acm" { | Name | Version | |------|---------| -| [aws](#provider\_aws) | >= 2.53 | +| [aws.acm](#provider\_aws.acm) | >= 2.53 | +| [aws.dns](#provider\_aws.dns) | >= 2.53 | ## Modules diff --git a/examples/complete-dns-validation-with-cloudflare/main.tf b/examples/complete-dns-validation-with-cloudflare/main.tf index f99a154..73983d4 100644 --- a/examples/complete-dns-validation-with-cloudflare/main.tf +++ b/examples/complete-dns-validation-with-cloudflare/main.tf @@ -8,6 +8,11 @@ locals { module "acm" { source = "../../" + providers = { + aws.acm = aws, + aws.dns = aws + } + domain_name = local.domain_name zone_id = data.cloudflare_zone.this.id diff --git a/examples/complete-dns-validation/main.tf b/examples/complete-dns-validation/main.tf index 058a6b2..54a6569 100644 --- a/examples/complete-dns-validation/main.tf +++ b/examples/complete-dns-validation/main.tf @@ -23,6 +23,11 @@ resource "aws_route53_zone" "this" { module "acm" { source = "../../" + providers = { + aws.acm = aws, + aws.dns = aws + } + domain_name = local.domain_name zone_id = coalescelist(data.aws_route53_zone.this.*.zone_id, aws_route53_zone.this.*.zone_id)[0] diff --git a/examples/complete-email-validation/main.tf b/examples/complete-email-validation/main.tf index ce4b1ec..006d442 100644 --- a/examples/complete-email-validation/main.tf +++ b/examples/complete-email-validation/main.tf @@ -5,6 +5,11 @@ resource "aws_route53_zone" "this" { module "acm" { source = "../../" + providers = { + aws.acm = aws, + aws.dns = aws + } + domain_name = var.domain_name zone_id = aws_route53_zone.this.zone_id diff --git a/main.tf b/main.tf index 07fd069..d384dc9 100644 --- a/main.tf +++ b/main.tf @@ -16,7 +16,8 @@ locals { } resource "aws_acm_certificate" "this" { - count = local.create_certificate ? 1 : 0 + provider = aws.acm + count = local.create_certificate ? 1 : 0 domain_name = var.domain_name subject_alternative_names = var.subject_alternative_names @@ -34,7 +35,8 @@ resource "aws_acm_certificate" "this" { } resource "aws_route53_record" "validation" { - count = local.create_certificate && var.validation_method == "DNS" && var.create_route53_records && var.validate_certificate ? length(local.distinct_domain_names) : 0 + provider = aws.dns + count = local.create_certificate && var.validation_method == "DNS" && var.create_route53_records && var.validate_certificate ? length(local.distinct_domain_names) : 0 zone_id = var.zone_id name = element(local.validation_domains, count.index)["resource_record_name"] @@ -51,7 +53,8 @@ resource "aws_route53_record" "validation" { } resource "aws_acm_certificate_validation" "this" { - count = local.create_certificate && var.validation_method != "NONE" && var.validate_certificate && var.wait_for_validation ? 1 : 0 + provider = aws.acm + count = local.create_certificate && var.validation_method != "NONE" && var.validate_certificate && var.wait_for_validation ? 1 : 0 certificate_arn = aws_acm_certificate.this[0].arn diff --git a/versions.tf b/versions.tf index 25f85e5..d4a4d8f 100644 --- a/versions.tf +++ b/versions.tf @@ -3,8 +3,9 @@ terraform { required_providers { aws = { - source = "hashicorp/aws" - version = ">= 2.53" + source = "hashicorp/aws" + version = ">= 2.53" + configuration_aliases = [aws.acm, aws.dns] } } }