Terraform несколько регионов aws_ses_domain_identity - PullRequest
1 голос
/ 08 января 2020

Я хочу создать ресурс aws_ses_domain_identity в нескольких регионах, но, насколько я вижу, это возможно только путем изменения региона поставщика AWS.

Я попытался использовать for_each без удачи. Затем я хочу создать запись aws_route53_record из validation_tokens. Я подозреваю, что это также не будет работать.

В конечном счете, я стремлюсь создать идентификацию домена SES и соответствующие записи проверки Route 53 для регионов, указанных в переменной (ses_regions).

Код:

provider "aws" {
  alias   = "eu-central-1"
  region  = "eu-central-1"
}

provider "aws" {
  alias   = "us-west-2"
  region  = "us-west-2"
}

variable "ses_regions" {
  description = "The aws region in which to operate"
  default = {
    region1 = "us-west-2"
    region2 = "eu-central-1"
  }
}

resource "aws_ses_domain_identity" "example" {
  for_each = var.ses_regions

  provider = each.value
  domain = var.ses_domain
}

resource "aws_route53_record" "example_amazonses_verification_record" {
  for_each = aws_ses_domain_identity.example.verification_token

  zone_id = var.zone_id
  name    = "_amazonses.${var.ses_domain}"
  type    = "TXT"
  ttl     = "600"
  records = each.value
}

Ошибка:

Error: Invalid provider configuration reference

  on .terraform/modules/ses/main.tf line 8, in resource "aws_ses_domain_identity" "example":
   8:   provider = aws.each.value

The provider argument requires a provider type name, optionally followed by a
period and then a configuration alias.
...