5

テラフォームの文字列の単純なリストを、キーをインデックスとしてマップに変換したいと思います。

私はこのようなものから行きたいです:

locals {
  keycloak_secret = [
    "account-console",
    "admin-cli",
    "broker",
    "internal",
    "realm-management",
    "security-admin-console",
  ]
}

のようなものに

map({0:"account-console", 1:"admin-cli"}, ...) 

私の目標は、terraform 0.13 の新しい機能を利用して、terraform モジュールでマップ上のループを使用することです。

解決策が見つかりませんでした。何か助けになるかもしれません。ありがとうございます。

4

2 に答える 2

0

@Marcinの答えよりも醜い別の解決策を思いつきました。

locals = {
    keycloak_secret_map = for secret_name in local.keycloak_secret : index(local.keycloak_secret, secret_name) => secret_name
}

どちらが与える

{
  0 = "account-console"
  1 = "admin-cli"
  2 = "broker"
  3 = "internal"
  4 = "realm-management"
  5 = "security-admin-console"
}
于 2020-08-14T08:58:53.920 に答える