使用 yq 版本 4 更新 yaml 文件
update yaml file with yq version 4
我在 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)
,知道吗?
在 yq
v4 中,您可以使用当前环境中的 env()
function to lookup 值。但这意味着名称的值必须在本地传递给 yq 调用
name="FOO" yq eval '.metadata.name = env(name)' dep.yaml
我在 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)
,知道吗?
在 yq
v4 中,您可以使用当前环境中的 env()
function to lookup 值。但这意味着名称的值必须在本地传递给 yq 调用
name="FOO" yq eval '.metadata.name = env(name)' dep.yaml