修改YAML以使用yq在元数据中的每个条目下包含标签
我有一个如下所示的yaml文件。此yaml文件需要在每个configmap下使用新标签进行修补修改YAML以使用yq在元数据中的每个条目下包含标签,yaml,yq,Yaml,Yq,我有一个如下所示的yaml文件。此yaml文件需要在每个configmap下使用新标签进行修补 apiVersion: v1 kind: ConfigMapList items: - apiVersion: v1 data: test: 1 kind: ConfigMap metadata: name: grafana-dashboard-apiserver1 namespace: monitoring - apiVers
apiVersion: v1
kind: ConfigMapList
items:
- apiVersion: v1
data:
test: 1
kind: ConfigMap
metadata:
name: grafana-dashboard-apiserver1
namespace: monitoring
- apiVersion: v1
data:
test: 2
kind: ConfigMap
metadata:
name: grafana-dashboard-apiserver2
namespace: monitoring
- apiVersion: v1
data:
test: 3
kind: ConfigMap
metadata:
name: grafana-dashboard-apiserver3
namespace: monitoring
我想在此configmaplist中的每个configmap下插入标签,如下所示
apiVersion: v1
kind: ConfigMapList
items:
- apiVersion: v1
data:
test: 1
kind: ConfigMap
metadata:
name: grafana-dashboard-apiserver1
namespace: monitoring
labels:
grafana_dashboard: "1"
- apiVersion: v1
data:
test: 2
kind: ConfigMap
metadata:
name: grafana-dashboard-apiserver2
namespace: monitoring
labels:
grafana_dashboard: "1"
- apiVersion: v1
data:
test: 3
kind: ConfigMap
metadata:
name: grafana-dashboard-apiserver3
namespace: monitoring
labels:
grafana_dashboard: "1"
我不知道如何在bash中执行此操作。请帮助我如何执行此bash。yq有帮助吗?或Kustomize?如果正在使用,则可以使用以下路径表达式在
yq w yaml'项[*].元数据.标签.grafana_仪表板'--tag'!!str'1
如果生成的YAML输出符合预期,您可以使用
-i
标志,即yq w-i'..
您使用的是哪个版本的yq
?jq上的包装器还是Go版本?yq--version
@Inian.的后期输出。它是yq版本3.3.0