Terraform 插值 - 将字符串转换为列表

luq*_*qlu 2 string-interpolation terraform

如何将字符串"foo, bar, xid, uid"转换为列表["foo", "bar", "xid", "uid"]

我正在分配来自 Consul 的变量值,它是一个字符串

my_var = "foo, bar, xid, uid"
Run Code Online (Sandbox Code Playgroud)

现在我想转换my_var为一个如下所示的列表:

my_list = ["foo", "bar", "xid", uid"]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?我试图使用formatlistsplat 操作符,但没有成功

my_list = ${formatlist(<put magic here>, var.my_var)
Run Code Online (Sandbox Code Playgroud)

thi*_*ade 8

ydaetskcoR 的答案本质上是正确的,但是在 Terraform 0.12中语法已经改变,分割函数行应该是:

my_list = split(",", var.my_var)
Run Code Online (Sandbox Code Playgroud)


yda*_*coR 5

您可以在此处使用该split功能

my_list = ${split(",", var.my_var)}
Run Code Online (Sandbox Code Playgroud)