问题标签 [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.
yq - 在 `yq` 写入命令中使用自引用
我有一个看起来像这样的 yaml 文件:
我想将其转换为:
在yq
v2 中,我使用命令.[] |= .value'
将数组的每个元素更新为.value
字段中的值。有没有办法用yq
v3 做到这一点?
产量
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 版本贬值的内容?
yaml - 合并 YAML 数组,忽略 YAML 中的其他字段
我正在寻找一种方法来合并来自两个独立 YAML 的数组(将一个附加到另一个)。然而,YAML 有一个用运行时值替换的字段(不在数组中){}
。IE
为此,我使用的是 yq 版本 2.14。我试过yq merge -a=append a.yaml b.yaml
了,它可以根据需要处理规则数组,但将name: {clusterRoleName}
其视为 JSON 和输出:
有没有办法只合并一个字段,或者忽略特定的键或值类型?如果有人能够建议一种替代方法,我也不会为此使用 yq 。
linux - 如何将多个值添加到 yaml 中的特定键?尼普兰相关
我正在尝试在 Linux 中配置 IPv6 地址,但我想如何将值添加到 netplan 的 YAML 文件中,这是文件:
我想在 key 处添加 IPv6 地址addresses
,但保留那些存在的地址。是否有可能以yq
任何其他方式完成或有点简单,所以我可以从中执行 bash 脚本?我还没有找到任何工具,它是 netplan 能够轻松添加范围内地址的特定工具。任何帮助将不胜感激。
amazon-cloudformation - 使用 yq v4 为 YAML 值添加格式
我正在尝试使用 yq https://github.com/mikefarah/yq v4.3.2 在 CloudFormation 模板中添加 yaml 值,如下所示:
相反,我得到的是:
文档中的样式位以及来自此 SO 答案的 yq 处理带引号的字符串使我认为 bash 脚本的这一部分可以工作,但是样式部分被忽略了。
我已经尝试了一大堆类似的位,但似乎无法破解这个坚果。这里的任何帮助将不胜感激!
kubernetes - 以编程方式应用多资源 Kubernetes YAML 文件中的单个资源
我有一个包含三个配置映射的文件,如下所示。
我试图仅适用test-config-three
于集群。我知道我可以把它分解成它自己的文件并运行kubectl apply -f test-config-three.yaml
,但是有没有办法做到这一点而不必创建一个新文件?
我希望能够做类似的事情:
但yq
似乎不支持在文件中查找单个资源。我还查看了kubesplit 之类的工具,但它们倾向于将所有资源输出到单独的文件中。
有没有办法在不创建新文件的情况下从包含多个资源的 yaml 文件中隔离和输出单个资源?
更新
感谢@Inian 在下面的回答,我能够让这个完整的命令正常工作。
bash - 使用 yq 更新带有 artifacthub.io 注释的 yaml 文件
我有一个 bash 脚本,它正在使用artifacthub.io 注释更新 helm yaml 文件。但是,我认为我的脚本使用的变量需要命令使用双引号而不是单引号。此外,artifacthub.io
导致 artifact 和 io 分离的问题。我可以使用哪个yq
命令来更新changes
和images
注释?我也试过用sed
没用。
我尝试了类似下面的方法,但没有成功。
yaml - 如果键是电子邮件 ID,如何从 yaml 文件中读取键值对?
Yaml 文件名:abc.yaml
abc.yaml 内容
我试过yq read abc.yaml abc@in.xyz.com
输出是空的。
yaml - 使用 yq 更新 yaml 数组
我有以下要替换命令字段的 yaml
有
想
有没有办法用 wq 来实现这一点,我尝试使用样式但没有成功,如果我将它更改为简单的字符串,它可以工作,但当我想传递完整数组时,你知道吗?
json - 用 yq 版本 4 更新 yaml 文件
我使用了以下命令,yq version 3
效果很好
name
是来自 makefile的参数
现在我已经安装了版本 4,它停止工作
我已经尝试过这里的一些东西
https://mikefarah.gitbook.io/yq/upgrading-from-v3
但它不起作用,因为我不确定如何正确传递参数$(name)
,知道吗?