微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 yq version4 更新 yaml 文件

如何解决使用 yq version4 更新 yaml 文件

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

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

在 yq4 上我得到错误,它不知道w我怎样才能让它工作 我没有找到任何可以帮助我的案例的匹配示例

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

解决方法

查看 migration guide 的“更新/编写文档”部分。

以下命令应该适用于您使用 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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。