【问题标题】:Terraform modules azure event subscription optional fieldsTerraform 模块 azure 事件订阅可选字段
【发布时间】:2020-03-09 12:41:20
【问题描述】:

我正在尝试使用 terraform 模块来创建指向存储队列的事件订阅作为它的端点。

下面是模块

  resource "azurerm_eventgrid_event_subscription" "events" {
  name                      = var.name
  scope                     = var.scope
  subject_filter            = var.subject_filter
  storage_queue_endpoint    = var.storage_queue_endpoint
  }

而 terraform 是

module "storage_account__event_subscription" {
  source       = "../modules/event"
  name         = "testevent"
  scope        = test
  subject_filter = {
    subject_begins_with = "/blobServices/default/containers/test/blobs/in"
  }

  storage_queue_endpoint = {
    storage_account_id = test
    queue_name         = test
  }
}

错误信息:

: 主题过滤器 { 这里不需要“subject_filter”类型的块。 错误:不支持的块类型 在 azure.tf 第 90 行,在模块“storage_account__event_subscription”中: :存储队列端点{ 此处不应出现“storage_queue_endpoint”类型的块。

如何正确解析 terraform 模块中的可选字段?

【问题讨论】:

    标签: azure terraform azure-resource-manager terraform-provider-azure


    【解决方案1】:

    在你的模块中:

      resource "azurerm_eventgrid_event_subscription" "events" {
      name                      = var.name
      scope                     = var.scope
      subject_filter            = {
        subject_begins_with = var.subject_begins_with
    }
      storage_queue_endpoint    = var.storage_queue_endpoint
      }
    

    此处已关闭格式化,因此请确保运行 terraform fmt 以解决我的不良格式化问题。还将变量添加到variables.tf 文件中。

    您的 Terraform 文件:

    module "storage_account__event_subscription" {
      source       = "../modules/event"
      name         = "testevent"
      scope        = test
      subject_begins_with = "/blobServices/default/containers/test/blobs/in"
    
      storage_queue_endpoint = {
        storage_account_id = test
        queue_name         = test
      }
    }
    

    您在模块中创建完整的结构,然后在 terraform 文件中分配变量。

    任何具有相同或大致相同值的东西都可以在variables.tf 中设置默认值,以便在 TF 文件中获得更小的块。

    【讨论】:

      猜你喜欢
      • 2020-02-22
      • 2020-11-09
      • 1970-01-01
      • 2020-04-29
      • 2022-11-07
      • 2019-11-05
      • 2019-01-13
      • 2021-04-28
      • 1970-01-01
      相关资源
      最近更新 更多