[英]Create google storage bucket using terraform and set life cycle rule for the specified buckets
我有一個 terraform 模塊來為用戶創建一些具有指定權限的存儲桶,現在我需要為一些桶指定一些生命周期規則,我需要 map 在兩個變量之間,如下所示:
變量.tf
variable "buckets" {
description = "List of buckets"
type = list(string)
default = []
}
variable "bucket_deletion_rules" {
description = "Ad-hoc Bucket deletion rules"
type = set(object({}))
default = [{}]
}
桶.tf
resource "google_storage_bucket" "data_bucket" {
for_each = toset(var.buckets)
name = each.key
project = var.project
location = var.region
uniform_bucket_level_access = true
versioning {
enabled = false
}
dynamic "lifecycle_rule" {
for_each = var.bucket_deletion_rules
content {
action {
type = "Delete"
}
condition {
age = lifecycle_rule.value
}
}
}
}
上面的代碼不能正常工作:想法是這樣定義變量:
buckets = [
"bucket-mhmd-test1",
"bucket-mhmd-test2",
"bucket-mhmd-test3"
]
bucket_deletion_rules = [
{
"bucket-mhmd-test1" = 50
"bucket-mhmd-test2" = 10
}
]
我試圖在動態中放置一個嵌套的 for_each,但我無法將存儲桶名稱與存儲桶刪除規則進行比較。 那么現在我如何定義變量並在這兩個變量之間進行均衡以將規則應用於所需的桶?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.