根据azurerm_cosmosdb_sql_container的documentation on Terraform.io,它说我可以包含一个indexing_policy块。但是,当我运行terraform plan
时会出现错误:
错误:不支持的块类型
在main.tf行912中的资源“ azurerm_cosmosdb_sql_container”中 “ AccountActivity”:912:indexing_policy {
这里不应该使用“ indexing_policy”类型的块。
main.tf
resource "azurerm_cosmosdb_sql_container" "AccountActivity" {
name = "AccountActivity"
resource_group_name = azurerm_resource_group.backendResourceGroup.name
account_name = azurerm_cosmosdb_account.AzureCosmosAccount.name
database_name = azurerm_cosmosdb_sql_database.AzureCosmosDbCache.name
default_ttl = 2592000
throughput = 2500
indexing_policy {
indexing_mode = "Consistent"
included_path {
path = "/*"
}
excluded_path {
path = "/\"_etag\"/?"
}
}
}
这是我的terraform version
输出:
terraform version
Terraform v0.13.4
+ provider registry.terraform.io/-/azurerm v2.30.0
+ provider registry.terraform.io/hashicorp/azurerm v2.20.0
+ provider registry.terraform.io/hashicorp/random v2.3.0
答案 0 :(得分:2)
搜索GitHub后,我终于发现添加了对indexing_policy块的支持in this commit 26 days ago。该文档没有提及这一点,release notes for azurerm v2.31.1也没有提及。在使用最新版本的azurerm更新了main.tf文件并运行了terraform init
之后,terraform plan
命令可以正常工作。
provider "azurerm" {
version = "~>2.31.1"
features {}
}