提供此资源:
resource "google_compute_instance" "instance" {
...
network_interface {
...
access_config {
...
}
}
}
我想根据条件有条件地定义access_config
属性。
resource "google_compute_instance" "instance" {
...
network_interface {
...
dynamic "access_config" {
for_each = var.condition ? [1] : []
content {
...
}
}
}
}
答案 0 :(得分:1)
我不太熟悉,但是我认为您可以使用count参数来完成此操作。
首先,您需要将一个变量添加到您的variables.tf文件中:
variable "conditional_on" {
description = "enable or disable"
type = bool
}
然后,您可以在count参数中添加变量:
resource "google_compute_instance" "instance" {
...
network_interface {
...
dynamic "access_config" {
count = var.conditional_on ? 1 : 0
content {
...
}
}
}
}
有关Terraform文档的更多信息: https://www.terraform.io/docs/configuration-0-11/interpolation.html#conditionals
答案 1 :(得分:1)
类似于 Josep Nadal
提到的,但将 count
更改为 for_each
就像
dynamic "access_config" {
for_each = var.conditional_on ? ["1"] : []
content {
nat_ip = null
}
}