无法使用indexing_policy块创建azurerm_cosmosdb_sql_container

时间:2020-10-10 02:54:15

标签: terraform terraform-provider-azure

根据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

1 个答案:

答案 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 {}
}