terraformのoutputは1つのブロックに複数入れるのは無理

1109 ワード

Terraformにおけるoutputは1つのoutputブロックに複数のValueを入れることは出来ない。

↓ こんな書き方はapply時にエラーになる

output "sample-output" {
    value = aws_instance.sample.id
    value = aws_instance.sample.instance_type
}
│ Error: Attribute redefined
│ 
│   on main.tf line 32, in output "sample-output":
│   32:     value = aws_instance.sample.instance_type
│ 
│ The argument "value" was already set at main.tf:31,5-10. Each argument may be set only once.

なので分割して書いてあげないといけない

output "sample-output" {
    value = aws_instance.sample.id
}

output "sample-output2" {
    value = aws_instance.sample.instance_type
}

そうするとapply時にエラーが起きずに2つのoutputが出力された。

Apply complete! Resources: 0 added, 0 changed, 0 destroyed.

Outputs:

sample-output = "i-0ef7f2375a1ab3292"
sample-output2 = "t3.micro"