Terraform根级别输出问题

Terraform根级别输出问题,terraform,Terraform,我在terraform中遇到了一些关于模块根级别输出的奇怪问题 我们在根级别的outputs.tf中有以下内容: output "vpc_id" { value = "${aws_vpc.vpc.id}" } 在模块本身中,我们有 resource "aws_vpc" "vpc" { cidr_block = "${var.vpc_cidr}" enable_dns_hostnames = true tags { Name = "${upper(var.env)}-

我在terraform中遇到了一些关于模块根级别输出的奇怪问题

我们在根级别的outputs.tf中有以下内容:

output "vpc_id" {
  value = "${aws_vpc.vpc.id}"
}
在模块本身中,我们有

resource "aws_vpc" "vpc" {
  cidr_block = "${var.vpc_cidr}"
  enable_dns_hostnames = true
  tags {
      Name = "${upper(var.env)}-TF"
      env = "${var.env}"
      managed = "Terraform"
  }
}
但是,在运行平面地形时,在分析输出块时出错,并在跟踪打开时显示:

2017/01/31 17:56:54 [INFO] Terraform version: 0.8.0  142dd256ad48ab17b6019fe9cd18712167fcf4b4
2017/01/31 17:56:54 [INFO] CLI args: []string{"/usr/local/bin/terraform", "get"}
2017/01/31 17:56:54 [DEBUG] Detected home directory from env var: /root
2017/01/31 17:56:54 [DEBUG] Detected home directory from env var: /root
2017/01/31 17:56:54 [DEBUG] Attempting to open CLI config file: /root/.terraformrc
2017/01/31 17:56:54 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
Get: file:///srv/terraform/modules/networking/
2017/01/31 17:56:54 [DEBUG] Detected home directory from env var: /root
Error loading Terraform: module root: 1 error(s) occurred:

* output 'vpc_id': unknown resource 'aws_vpc.vpc' referenced in variable aws_vpc.vpc.id
2017/01/31 17:56:54 [DEBUG] plugin: waiting for all plugin processes to complete...

我现在不知所措。我找遍了所有地方,没有找到任何东西,甚至没有找到我们为什么会犯这样的错误

啊,这里的问题是:

output "vpc_id" {
  value = "${aws_vpc.vpc.id}"
}
定义根级别输出时,您需要这样做:

output "vpc_id_root" {
  value = "${module.networking.vpc_id}"
}
您还需要模块中的vpc_id输出将其传递给根上下文。