confd中的`getvs`是否可以与Yaml列表一起使用?

时间:2019-05-09 17:21:05

标签: templates confd

我已将yml文件设置为confd后端。我有一个Yaml列表来处理以下内容。

otherargs:
- "-Xmx256m"
- "-Xmn128m"

,然后尝试从下面的列表中读取值。因为这是一个列表,所以我正在使用getvs来获取string []中的所有值,并使用','将它们连接起来。引用join

values : [ {{$args := getvs "/otherargs"}}
                 {{join $args ","}}]

我收到的输出如下

values : []

在这里,我没有通过getvs从yaml列表中获取值。 由于它是一个列表,因此应该通过getvs来收集数据,但是为什么我收到空字符串却在这里什至没有得到单个值。那么getvs是否可以与Yaml列表一起使用?如果是,那么我在这里想念什么?

我还尝试了range功能来获取通过getvs接收的值,如下所述,参考了getvs

values :  [{{range getvs "/otherargs"}}
                  {{.}},
                  {{end}}]

,但收到相同的空数组作为结果。 :(

任何帮助将不胜感激吗?

1 个答案:

答案 0 :(得分:0)

我在尝试使用getvs的{​​{3}}中找到了解决方案,但此问题的解决方案是ls命令。现在,我可以使用以下代码从yml中填充此列表。

 values :  [{{ $otherargs := ls "/otherargs" }}
             "{{join $otherargs "\",\""}}"]

所以最终结果,我收到如下

 values : ["-Xmx256m", "-Xmn128m"]