我想通过Terraform输出得到一个独特的存储大小

问题描述 投票:0回答:0

我使用“for_each”创建了一个地形代码。我做了如下代码。我认为整个代码在这里并不重要,所以我省略了整个代码。然后,我要获取的terraform资源代码如下

resource "kubernetes_persistent_volume_claim" "pvc" {
  for_each = var.az_fileshare
  metadata {
    name = each.value.pvc_name # PVC 이름
  }
  spec {
    access_modes       = ["ReadWriteMany"]
    storage_class_name = each.value.storage_class
    resources {
      requests = {
        storage = each.value.pv_size # PVC 볼륨
      }
    }
    volume_name = kubernetes_persistent_volume.pv[each.key].id
  }
}

我想输出上面代码中唯一“存储”的大小作为terraform输出。

output "kubernetes_pvc_size" {
  value = [
    for pvc_size in kubernetes_persistent_volume_claim.pvc : pvc_size.spec
  ]
}

但是,也打印了不需要的值。我应该怎么办?我请求你的帮助。

kubernetes_pvc_size = [
  tolist([
    {
      "access_modes" = toset([
        "ReadWriteMany",
      ])
      "resources" = tolist([
        {
          "limits" = tomap({})
          "requests" = tomap({
            "storage" = "10Gi"
          })
        },
      ])
      "selector" = tolist([])
      "storage_class_name" = "azurefile-csi"
      "volume_name" = "TEST-1-pv"
    },
  ]),
  tolist([
    {
      "access_modes" = toset([
        "ReadWriteMany",
      ])
      "resources" = tolist([
        {
          "limits" = tomap({})
          "requests" = tomap({
            "storage" = "10Gi"
          })
        },
      ])
      "selector" = tolist([])
      "storage_class_name" = "azurefile-csi"
      "volume_name" = "TEST-2-pv"
    },
  ]),
  tolist([
    {
      "access_modes" = toset([
        "ReadWriteMany",
      ])
      "resources" = tolist([
        {
          "limits" = tomap({})
          "requests" = tomap({
            "storage" = "10Gi"
          })
        },
      ])
      "selector" = tolist([])
      "storage_class_name" = "azurefile-csi"
      "volume_name" = "TEST-3-pv"
    },
  ]),
]

我只想打印“存储”=“10 Gi”。

azure loops foreach terraform output
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.