使用yqversion4更新yaml文件



im有以下代码,适用于yq3,当我尝试升级到yq4时,失败

这适用于yq3yq w -i dep.yaml 'spec.spec.image' $(MY_VAL)

在yq4上,我得到了一个错误,它不知道w如何使它工作我没有找到任何匹配的例子,可以帮助我的情况

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

查看迁移指南的"更新/编写文档"部分。

以下命令应该适用于yq版本4的任务:

执行前的dep.yaml

a:
b: 1
spec:
spec:
image: image_old.jpg
c:
d: 2

MY_VAL="image_new.jpg" yq -i e '.spec.spec.image = strenv(MY_VAL)' dep.yaml

执行后的dep.yaml

a:
b: 1
spec:
spec:
image: image_new.jpg
c:
d: 2

最新更新