[英]How to use Terraform for_each resource block and count resource block
[英]Terraform dynamic block with for_each
需要建议。 我正在尝试运行以下代码。 首先导入具有 vsts 配置的 adf。 对于第二个 adf,我不需要 vsts 配置。 我曾尝试使用动态块,但出现如下错误。
在 main.tf 第 16 行,在资源“azurerm_data_factory”“adf”中:2020-12-24T08:13:44.3101544Z 16:动态 [4m“action”
[0m { 2020-12-24T08:13:44.3101802Z [0m 2020-12-24T08:13:44.3102076Z 此处不应出现“动作”类型的块。
主文件
resource "azurerm_data_factory" "adf"{
for_each = var.purposes
name=lower("${var.component}-${var.project}-${var.regionname}-${var.azureregion}-${var.environment}-${each.value.purpose}")
location = data.azurerm_resource_group.rg.location
resource_group_name = data.azurerm_resource_group.rg.name
identity{
type="SystemAssigned"
}
dynamic "action" {
for_each = var.vsts_config ? [1] : []
content {
vsts_configuration {
account_name = var.accountname
branch_name = var.branchname
project_name = var.projectname
repository_name = var.repository
tenant_id = "__tenantId__"
root_folder = var.rootfolder
}
}
}
}
input.tfvars
purposes = {
a = {
purpose = "load",
}
b = {
purpose = "live",
}
}
action
不是azurerm_data_factory中的有效块。 如果你想让vsts_configuration
块可选,那么你的代码应该是:
dynamic "vsts_configuration" {
for_each = var.vsts_config ? [1] : []
content {
account_name = var.accountname
branch_name = var.branchname
project_name = var.projectname
repository_name = var.repository
tenant_id = "__tenantId__"
root_folder = var.rootfolder
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.