使用 yq 版本 4 更新 yaml 文件

时间:2021-02-10 20:00:29

标签: json yaml yq

我在 yq version 3 中使用了以下命令,效果很好

yq w -i  dep.yaml 'metadata.name' $(name)

name 是来自 makefile 的参数

现在我已经安装了第 4 版,但它停止工作了

我尝试过这里的一些东西

https://mikefarah.gitbook.io/yq/upgrading-from-v3

yq eval '.metadata.name = $(name)' dep.yaml 

但它不起作用,因为我不确定如何正确传递参数 $(name) ,知道吗?

1 个答案:

答案 0 :(得分:2)

yq v4 中,您可以使用当前环境中的 env() function to lookup 值。但这意味着 name 的值必须在本地传递给 yq 调用

name="FOO" yq eval '.metadata.name = env(name)' dep.yaml