Edg*_*r.A 17 terraform terraform-provider-azure
我正在为 编写某种包装模块azurerm_storage_account。
azurerm_storage_account有可选块
static_website {
index_document = string
error_404_document = string
}
Run Code Online (Sandbox Code Playgroud)
我想根据变量设置它,但我不太确定该怎么做?条件运算符实际上不适用于块(例如static_website = var.disable ? null : { .. })
或者块是否以这样的方式工作,如果我设置index_document和error_404_document,它与完全不设置块null相同?static_website
azurerm@2.x
TF@0.12.x
Mar*_*cin 33
我认为你可以使用动态块来实现这一点。基本上,当disableis时true,static_website不会创建 no 。否则,static_website将建造一个街区。
例如,修改后的代码可以是:
dynamic "static_website" {
for_each = var.disable == true ? toset([]) : toset([1])
content {
index_document = string
error_404_document = string
}
}
Run Code Online (Sandbox Code Playgroud)
您还可以尝试使用splat来检查是否disable有值或为空:
dynamic "static_website" {
for_each = var.disable[*]
content {
index_document = string
error_404_document = string
}
}
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,您可能需要根据var.disable实际值调整条件。
| 归档时间: |
|
| 查看次数: |
14019 次 |
| 最近记录: |