Terraform “地形资源”;随机“宠物”;它不起作用了

Terraform “地形资源”;随机“宠物”;它不起作用了,terraform,Terraform,此代码将创建一个名为EC2实例的EC2实例: provider "aws" { region = "eu-west-1" } module ec2 { source = "./ec2_instance" name = "EC2 Instance" } 但是,如果我尝试使用random\u pet资源,实例名称将变为空字符串 provider "aws" { region = "eu-west-1" } resource "random_pet" "server" { l

此代码将创建一个名为EC2实例的EC2实例:

provider "aws" {
  region = "eu-west-1"
}

module ec2 {
  source = "./ec2_instance"
  name = "EC2 Instance"
}
但是,如果我尝试使用
random\u pet
资源,实例名称将变为空字符串

provider "aws" {
  region = "eu-west-1"
}

resource "random_pet" "server" {
  length = 4
}

module ec2 {
  source = "./ec2_instance"
  name = "${random_pet.server.id}"
}
为什么

我正在使用来自的
随机宠物服务器.id
代码

更新:通过使用
输出
我能够调试这个。
Terraform在
计划期间似乎没有显示此变量的值。但是,在执行
apply
时,它成功地填充了该变量(因此命名了实例)。然后问题变成了
为什么它在计划中不起作用,而在应用中起作用?

我认为如果不查看您的EC2模块,就很难回答这个问题。如果将模块替换为值为
“${random_pet.server.id}”
的输出,会发生什么情况?这与模块无关。在添加具有该值的输出时,我有相同的行为。已更新问题…是否确定该问题为空且不是“
”?值应为。