Terraform在 databricks_rfa_access_request_destinations上报错,提示“provider_config is not a supported block”

编程语言 2026-07-09

我正在尝试在Terraform中创建一个databricks_rfa_access_request_destinations资源,但遇到了一个错误:provider_config不是一个受支持的块。

我的目标是基于一个循环为该资源动态分配一个工作区。我正在使用provider_config块来指定workspace_id,但这似乎不是正确的做法。

以下是我使用的代码:

resource "databricks_rfa_access_request_destinations" "catalog_manager" {  
  for_each = var.catalogs  

  destinations = \[for item in var.request_access_destinations: {destination_id = item.id, destination_type = item.type}\]  

  securable = {  
    type      = "CATALOG"  
    full_name = each.value.name  
  }  

  provider = databricks.accounts  

  provider_config {  
    workspace_id = data.databricks_mws_workspaces.all.ids\[var.catalogs\[each.value.name\].workspace_name\]  
  }  

  depends_on = \[databricks_catalog.this\]  
}

根据databricks_rfa_access_request_destinations资源的官方Terraform文档,看来provider_config确实是一个有效的参数。
然而,在我的实现中,Terraform无法识别它。

版本信息:

terraform: Initializing the backend...
terraform: Initializing provider plugins...
terraform: - Reusing previous version of databricks/databricks from the dependency lock file
terraform: - Reusing previous version of hashicorp/google from the dependency lock file
terraform: - Reusing previous version of hashicorp/google-beta from the dependency lock file
terraform: - Using previously-installed databricks/databricks v1.113.0
terraform: - Using previously-installed hashicorp/google v7.29.0
terraform: - Using previously-installed hashicorp/google-beta v7.29.0
terraform: Terraform has been successfully initialized!

能否请某人帮助我理解为何会出现此错误,以及为databricks_rfa_access_request_destinations资源动态分配工作区的正确方式是什么?

解决方案

根据 databricks_rfa_access_request_destinations 资源类型的结构(作为 terraform providers schema -json 输出的一部分返回),provider_config 被定义为直接参数而非嵌套块类型,因此需要使用参数语法而不是块语法:

  provider_config = {  
    workspace_id = data.databricks_mws_workspaces.all.ids[var.catalogs[each.value.name].workspace_name]
  }
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章