自由気ままに書いちゃおう

好きなことをつらつらと・・・

【Terraform】(初心者向け)MapのKeyとValueをそれぞれ取得する

今回は、keys関数とvalues関数についてです。

 

■はじめに

terraformでMapを利用していると、
「Mapの中のKeyだけ取得したい」
「Mapの中のValueだけ取得したい」
という場面があります。


そんな時に利用するのが、

keys - Functions - Configuration Language | Terraform | HashiCorp Developer

values - Functions - Configuration Language | Terraform | HashiCorp Developer

です。

■実例

以下は、local.name_map の 「Key一覧」と「Value一覧」を取得するコードです。

locals {
  name_map = {
    "dev1" = "develop1"
    "dev2" = "develop2"
    "dev3" = "develop3"
    "dev4" = "develop4"
  }
}

output "values_list" {
  value = values(local.name_map)
}

output "keys_list" {
  value = keys(local.name_map)
}

この実行結果(= outputの出力結果)は以下の通りです。

  + keys_list   = [
      + "dev1",
      + "dev2",
      + "dev3",
      + "dev4",
    ]
  + values_list = [
      + "develop1",
      + "develop2",
      + "develop3",
      + "develop4",
    ]

 

keyの一覧とvalueの一覧を取得することができています。

 

以上です。