Использование функций terraform 0.12 для извлечения значения из списка карт - PullRequest
0 голосов
/ 18 марта 2020

Используя Auth0 провайдера Мне нужно создать custom_domain . Для его проверки пользователю необходимо создать DNS-запись с CNAME, сгенерированной во время процесса. Ресурс verification в файле tfstate выглядит следующим образом:

"verification": [
  {
    "methods": [
      {
        "name": "cname",
        "record": "some-random-cname.auth0.com"
      }
    ]
  }
],
  • До сих пор мне удавалось получить набор карт (в соответствии с файлом tfstate), но все еще не могу получить record значение

resource "auth0_custom_domain" "main" {
  domain              = "custom.example.com"
  type                = "auth0_managed_certs"
  verification_method = "txt"
}

locals {
  something = flatten(auth0_custom_domain.main.verification[*].methods)
}

output "my-local" {
  value = local.something
}
  • Вывод выглядит примерно так:
my-local = [
  {
    "name" = "cname"
    "record" = "some-random-cname.auth0.com"
  },
]
  • Кажется, я близок к тому, чтобы получить эту запись и использовать это как вход для входа в route53, но пока я не могу его получить, любая помощь будет оценена.

1 Ответ

0 голосов
/ 20 марта 2020

Как и предположил ydaetskcoR, мне удалось решить эту проблему, но мне кажется, что это слишком сложно, поэтому я хотел бы посмотреть, есть ли у кого-нибудь лучшее решение, чем это:

something = lookup(element(flatten(auth0_custom_domain.main.verification[*].methods), 0), "record")
...