问题标签 [yq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1162 浏览

yq - 在 `yq` 写入命令中使用自引用

我有一个看起来像这样的 yaml 文件:

我想将其转换为:

yqv2 中,我使用命令.[] |= .value'将数组的每个元素更新为.value字段中的值。有没有办法用yqv3 做到这一点?

产量

0 投票
1 回答
277 浏览

google-cloud-platform - 尝试在 GCP 上下载 Kubeflow 管理集群蓝图时出现 YQ 错误

我对 Kubeflow 相当陌生,并且很难按照在 GCP 上部署它的说明进行操作。在完成部署过程的前两个部分后,当被要求使用 Makefile 从 GitHub 下载 Kubeflow 管理集群蓝图时,我卡在了“管理集群设置”。

从管理目录中(根据说明指定为 env var $MGMT_DIR),我运行make get-pkg命令以运行相应的 Makefile 指令。执行时,我收到以下错误消息:

看起来每条消息都引用了一个不同的“ .setters.” API,它似乎引用了我之前创建的环境变量。我查看了“ kubeflow/gcp-blueprints/management ”的 GitHub 存储库,虽然我不确定它是否有所不同,但 GitHub 页面上的说明与 Kubeflow 安装指南并不完全相同。主要是这个部分:

Kubeflow 说明:

GitHub 说明:

Makefile 中是否存在不正确或从以前的 Kubeflow 版本贬值的内容?

0 投票
1 回答
141 浏览

yaml - 合并 YAML 数组,忽略 YAML 中的其他字段

我正在寻找一种方法来合并来自两个独立 YAML 的数组(将一个附加到另一个)。然而,YAML 有一个用运行时值替换的字段(不在数组中){}。IE

为此,我使用的是 yq 版本 2.14。我试过yq merge -a=append a.yaml b.yaml了,它可以根据需要处理规则数组,但将name: {clusterRoleName}其视为 JSON 和输出:

有没有办法只合并一个字段,或者忽略特定的键或值类型?如果有人能够建议一种替代方法,我也不会为此使用 yq 。

0 投票
1 回答
161 浏览

linux - 如何将多个值添加到 yaml 中的特定键?尼普兰相关

我正在尝试在 Linux 中配置 IPv6 地址,但我想如何将值添加到 netplan 的 YAML 文件中,这是文件:

我想在 key 处添加 IPv6 地址addresses,但保留那些存在的地址。是否有可能以yq任何其他方式完成或有点简单,所以我可以从中执行 bash 脚本?我还没有找到任何工具,它是 netplan 能够轻松添加范围内地址的特定工具。任何帮助将不胜感激。

0 投票
1 回答
848 浏览

amazon-cloudformation - 使用 yq v4 为 YAML 值添加格式

我正在尝试使用 yq https://github.com/mikefarah/yq v4.3.2 在 CloudFormation 模板中添加 yaml 值,如下所示:

相反,我得到的是:

文档中的样式位以及来自此 SO 答案的 yq 处理带引号的字符串使我认为 bash 脚本的这一部分可以工作,但是样式部分被忽略了。

我已经尝试了一大堆类似的位,但似乎无法破解这个坚果。这里的任何帮助将不胜感激!

0 投票
2 回答
422 浏览

kubernetes - 以编程方式应用多资源 Kubernetes YAML 文件中的单个资源

我有一个包含三个配置映射的文件,如下所示。

我试图仅适用test-config-three于集群。我知道我可以把它分解成它自己的文件并运行kubectl apply -f test-config-three.yaml,但是有没有办法做到这一点而不必创建一个新文件?

我希望能够做类似的事情:

yq似乎不支持在文件中查找单个资源。我还查看了kubesplit 之类的工具,但它们倾向于将所有资源输出到单独的文件中。

有没有办法在不创建新文件的情况下从包含多个资源的 yaml 文件中隔离和输出单个资源?

更新

感谢@Inian 在下面的回答,我能够让这个完整的命令正常工作。

0 投票
1 回答
1453 浏览

bash - 使用 yq 更新带有 artifacthub.io 注释的 yaml 文件

我有一个 bash 脚本,它正在使用artifacthub.io 注释更新 helm yaml 文件。但是,我认为我的脚本使用的变量需要命令使用双引号而不是单引号。此外,artifacthub.io导致 artifact 和 io 分离的问题。我可以使用哪个yq命令来更新changesimages注释?我也试过用sed没用。

我尝试了类似下面的方法,但没有成功。

0 投票
1 回答
136 浏览

yaml - 如果键是电子邮件 ID,如何从 yaml 文件中读取键值对?

Yaml 文件名:abc.yaml

abc.yaml 内容

我试过yq read abc.yaml abc@in.xyz.com输出是空的。

0 投票
1 回答
2289 浏览

yaml - 使用 yq 更新 yaml 数组

我有以下要替换命令字段的 yaml

有没有办法用 wq 来实现这一点,我尝试使用样式但没有成功,如果我将它更改为简单的字符串,它可以工作,但当我想传递完整数组时,你知道吗?

0 投票
1 回答
752 浏览

json - 用 yq 版本 4 更新 yaml 文件

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

name是来自 makefile的参数

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

我已经尝试过这里的一些东西

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

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