YAML清理空环境变量

半兽人 发表于: 2025-12-29   最后更新时间: 2025-12-29 16:31:54  
{{totalSubscript}} 订阅, 15 游览

比如这个env环境变量:

      - name: ZBX_DB_KEY_FILE
        value: "/tmp/secrets/client-key.pem"
      - name: ZBX_DB_VERIFY_HOST
        value: "false"
      - name: ZBX_DB_CIPHER_LIST
        value: ""
      - name: MYSQL_PASSWORD
        valueFrom:
         secretKeyRef:
          name: db-secret
          key: db-zbx-pass
      - name: ZBX_LOGSLOWQUERIES
      - name: ZBX_LOADMODULE
        value: ""

需要清理掉空的环境变量,里面有多种情况:

  1. 空值:value: ""
  2. 没有value的

通过yq来进行清理,mac silicon安装yq

brew install yq

通过以下命令进行清理:

yq -i 'del(.spec.template.spec.containers[].env[] | select( (has("valueFrom") | not) and (has("value") | not or .value == "") ))' zabbix-proxy.yaml
更新于 2025-12-29
在线,35分钟前登录

查看YAML更多相关的文章或提一个关于YAML的问题,也可以与我们一起分享文章