【问题标题】:Terraform: Conditionally install TF moduleTerraform:有条件地安装 TF 模块
【发布时间】:2020-11-18 19:50:00
【问题描述】:

我创建了一个 Terraform 模块(安装 jenkins,但这超出了本问题的范围)

我希望能够有条件地安装它。

我已经尝试过count 方法:

module "jenkins" {
  count = "${var.install_jenkins}"
  source        = "../../../../modules-terraform/jenkins"
  project_id         = "${google_project.service.project_id}"
  zone = "${var.zone}"
  org_name = "${var.org_name}"
}

但它抛出以下错误:

错误:模块“jenkins”:“count”不是有效参数

有没有办法有条件地安装 Terraform 模块?

使用 Terraform 0.11.14

【问题讨论】:

  • 对此有一些相关的问题,但答案是否定的。您可以使用 jenkins_countinstall_jenkins 之类的变量作为变量,并将其传递到模块中的每个资源中以有条件地创建这些资源,但这将是一团糟,并且可能会导致您在 0.12 之前的 Terraform 中出现非延迟评估三元语句的其他问题.最好的办法是组合事物,因此您只在要创建 Jenkins 的地方包含模块定义。

标签: terraform terraform-modules


【解决方案1】:

【讨论】:

    猜你喜欢
    • 2021-09-06
    • 2021-04-01
    • 2021-11-20
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 2021-06-24
    相关资源
    最近更新 更多