【问题标题】:terraform conditional module with dependency具有依赖关系的 terraform 条件模块
【发布时间】:2021-07-02 22:34:46
【问题描述】:

我正在使用 terraform 0.14 并有两个有条件地创建的模块。 第二个模块隐含依赖于第一个模块:

   module "rg-sample" {
  count        = var.environment != "dev" ? 1 : 0
  source       = "../Modules/module-az-rg"
  name         = "rg-${var.environment}-vnet"
  location     = var.location
  tags         = var.tags
  deletelock   = false
  readonlylock = false
}

module "vnet" {
  count               = var.environment != "dev" ? 1 : 0
  source              = "../Modules/module-az-vnet"
  name                = "vnet-${var.environment}-01"
  location            = module.rg-sample.location
  resource_group_name = module.rg-sample.name
  address_space       = var.address_space
}

第二个模块出现以下错误:

错误:不支持的属性 resource_group_name = module.rg-sample.name

如果我使用变量而不是模块属性,则不会有任何隐式依赖,它会起作用,但我更喜欢将模块属性用于 resource_group_name 或 location。

【问题讨论】:

  • 错误是关于错误的属性。你的模块的定义是什么?有没有这样的属性?
  • 在第二个模块中有一个属性 resource_group_name 。如果我不使用 module.rg-sample.name 直接传递一个值,它将起作用
  • 试试module.rg-sample[0].name

标签: terraform terraform-modules


【解决方案1】:

感谢@Marcin。我不得不在下面使用sn-p:

module.rg-sample[0].name

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-21
    • 2019-01-12
    • 2015-12-28
    • 2016-07-21
    • 2020-02-05
    • 2021-12-13
    • 2014-02-20
    • 1970-01-01
    相关资源
    最近更新 更多