【发布时间】:2019-11-20 16:10:23
【问题描述】:
运行 Terraform 0.11.7 并收到以下错误:
module.frontend_cfg.var.web_acl:资源“data.terraform_remote_state.waf”没有变量“data.terraform_remote_state.waf.waf_nonprod_id”的属性“waf_nonprod_id”
下面是 terraform 文件:
module "frontend_cfg"
{
source = "../../../../modules/s3_fe/developers"
region = "us-east-1"
dev_shortname = "cfg"
web_acl = "${data.terraform_remote_state.waf.waf_nonprod_id}"
}
data "terraform_remote_state" "waf" {
backend = "local"
config = {
name = "../../../global/waf/terraform.tfstate"
}
}
创建上面引用的 tfstate 文件的文件如下。此文件在构建时没有问题。
resource "aws_waf_web_acl" "waf_fe_nonprod"
{
name = "fe_nonprod_waf"
metric_name = "fenonprodwaf"
default_action
{
type = "ALLOW"
}
}
output waf_nonprod_id
{
value = "${aws_waf_web_acl.waf_fe_nonprod.id}"
}
我将保留 cloudfront 文件的完整输出,但是,以下内容涵盖了文本:
resource "aws_cloudfront_distribution" "fe_distribution"
{
web_acl_id = "${var.web_acl}"
}
如果我将 waf ID 的 ID 放入 web_acl 变量中,它工作得很好,所以我怀疑这个问题与我调用数据的方式有关。不过,这似乎与文档相符。
【问题讨论】:
标签: terraform