You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform中能否在同一资源内引用自身属性?

同一资源内引用属性的可行性

可以的,Terraform 支持在同一资源块内部引用自身的属性值,核心就是用内置的this关键字来实现。

this代表当前资源实例本身,能直接访问资源块里已经定义的属性——不管是你显式设置的输入属性,还是资源创建后生成的输出属性都能引用。

比如你给出的这段代码就是完全合法的实现:

resource "some_resource" "foo" {
  name = "cool-name"

  attribute1 = "something-else-cool"
  attribute2 = format("%s-%s", this.name, this.attribute1)
}

这里attribute2通过this分别引用了同一资源里的name和attribute1,最终会生成值cool-name-something-else-cool。

需要注意的是,Terraform会先解析整个资源块的所有属性定义,所以属性的定义顺序不影响this的引用,哪怕你把attribute2写在name前面也能正常工作。

内容的提问来源于stack exchange,提问作者Jonathon Anderson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 00:05:18