请帮助我使用GCP上的Terraform,我已经有几天把头撞在墙上了。如果您对terraform有良好的经验,那么您需要花费5分钟。
所有需要的文件都已上传,其中包括2个模块,第一个(创建google项目)是静态的-从terraform init运行时使用的Terraform Tegistry中下载的,第二个(已在新创建的google项目中创建vm)-创建。错误文件也被上传。请提出建议!
1个模块称为项目-运行良好,它是创建新项目并在我们的project_id中生成
它使用此模块-https://registry.terraform.io/modules/terraform-google-modules/project-factory/google/5.0.0
2模块称为redis_vm-必须使用此project_id(模块1的输出)并创建新的mv和其他一些想法,例如网络和防火墙规则。
主要-为什么从模块2输入-看不到模块1的输出?我尽力了。但总是得到这样的东西
错误:对未声明的模块的引用 在modules / redis_vm / main.tf第13行上,在资源“ google_compute_network”“ vpc_network”中: 13:project =“ $ {module.project.project_id}” 在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
感谢您的帮助。‹崩溃