Terraform 合并两个列表并输出
我想将Azure虚拟机的外部和内部IP地址输入Python脚本,格式为Terraform 合并两个列表并输出,terraform,Terraform,我想将Azure虚拟机的外部和内部IP地址输入Python脚本,格式为script.py external1、internal1 external2、internal2 external3、internal3,例如script.py 54.120.31.31192.168.0.1 54.32.13.14192.168.0.2 54.33.16.19192.168.0.3 我可以使用此命令获得所需的输出,只是格式不正确: output "inventory" { value = "${
script.py external1、internal1 external2、internal2 external3、internal3
,例如script.py 54.120.31.31192.168.0.1 54.32.13.14192.168.0.2 54.33.16.19192.168.0.3
我可以使用此命令获得所需的输出,只是格式不正确:
output "inventory" {
value = "${
formatlist(
"%s,%s",
azurerm_public_ip.main.*.ip_address,
azurerm_network_interface.main.*.private_ip_address
)
}"
}
是否可以将这些列表合并到我想要的输出格式中?您很接近:
output "inventory" {
value = "${
join(
" ",
formatlist(
"%s,%s",
azurerm_public_ip.main.*.ip_address,
azurerm_network_interface.main.*.private_ip_address
)
)
}"
}
例如:
output "inventory" {
value = "${
join(
" ",
formatlist(
"%s,%s",
list("1", "2", "3"),
list("a", "b", "c")
)
)
}"
}
>地形应用
申请完成!资源:添加0个,更改0个,销毁0个。
产出:
存货=1,A2,B3,c
Hi@beatcracker,谢谢你。昨晚我在手机上读到了你的答案,并给了你一个巨大的绿色记号,但重新阅读后,我犯了一个错误——这不太正确。我需要inventory
输出以空格显示,例如1、a2、b3、c
-第一个列表中的一个条目,然后是逗号,然后是第二个列表中的第一个条目-然后是空格,然后重复。@dunc没问题,您只需要用空格连接即可。我已经更新了我的答案。Duhh,如果我只是快速看一下语法的话,我可能自己也能做到…:)对不起,伙计,你现在正在打绿色记号。谢谢