Mik*_*liy 6 yaml kubernetes yq
让 YAML 文档类似于:
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-scraping
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: allow-webhooks
Run Code Online (Sandbox Code Playgroud)
我想得到类似的东西
---
apiVersion: **networking.k8s.io/v1beta1**
kind: NetworkPolicy
metadata:
name: allow-scraping
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: allow-webhooks
Run Code Online (Sandbox Code Playgroud)
所以基本上获取文档,如果文档有kind: NetworkPolicy则 patch apiVersion: networking.k8s.io/v1beta1。
最好是一个衬垫,最好使用 yq v4,但其他解决方案也会有帮助。
Ini*_*ian 13
使用mikefarah/yq在 4 以上的版本上,您可以对所需文档执行select更新操作|=
yq e 'select(.kind == "NetworkPolicy").apiVersion |= "networking.k8s.io/v1beta1"' yaml
Run Code Online (Sandbox Code Playgroud)
上面的方法在yq version 4.6.0. 使用该-i标志就地替换文件。
| 归档时间: |
|
| 查看次数: |
3605 次 |
| 最近记录: |