2

请帮助我在 GCP 上使用 terraform,我已经有几天头撞墙了。谁对 terraform 有很好的经验,你用这个 5 分钟。

上传了所有需要的文件,它包括 2 个模块,第一个(创建 google 项目)是静态的 - 从 terraform init 运行时它使用的 terraform tegistry 下载,第二个(在新创建的 google 项目中创建 vm) - 已经创建。错误文件也被上传。请提供建议!

1 个模块被称为项目 - 运行良好,它是创建新项目并在我们的输入项目 ID 中生成

它使用这个模块 - https://registry.terraform.io/modules/terraform-google-modules/project-factory/google/5.0.0

2 模块称为 redis_vm- 必须使用这个 project_id(模块 1 的输出)并创建新的 mv 和其他一些想法,如网络和防火墙规则。

而主要 - 为什么来自模块 2 的输入 - 看不到模块 1 的输出?我什么都试。但总是得到类似的东西

错误:在资源“google_compute_network”“vpc_network”中的modules/redis_vm/main.tf第13行引用未声明的模块:13:project =“${module.project.project_id}”没有声明名为“project”的模块调用redis_vm。

例如,如果我在模块 2 中使用

resource "google_compute_instance" "default" {
  name         = "${var.name}"
  machine_type = "${var.machine_type}"
  project     =  "${module.project.project_id}"  # - IT IS NOW LOOKING FOR THIS - IT IS OUTPUT FROM MODULE 1

链接到此处的文件 https://drive.google.com/drive/folders/1_s9yuKQ3Prn-9CLsRcovjxes--FW2lcZ?usp=sharing

感谢您的帮助。‹ 崩溃

4

0 回答 0