You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubeconform Helm pre-commit插件执行时跳过文件问题求助

问题:kubeconform-helm pre-commit钩子跳过所有文件检测

我有如下Helm项目目录结构,尝试用kubeconform pre-commit钩子校验YAML文件,但每次执行都会提示无文件可检测并跳过:

Project
├── Makefile
├── helms
│   └── test-files
│       ├── Chart.yaml
│       ├── templates
│       │   ├── _helpers.tpl
│       │   ├── test-configmap.yaml
│       │   ├── test-deployment.yaml
│       │   ├── test-service.yaml
│       └── values.yaml
├──.pre-commit-config.yaml

当前.pre-commit-config.yaml配置:

repos:
  - repo: https://github.com/jtyr/kubeconform-helm
    rev: v0.1.16
    hooks:
      - id: kubeconform-helm
        args:
          - --verbose
          - --summary

执行命令:

pre-commit run --all-files

执行输出:

Kubeconform Helm.....................................(no files to check)Skipped

解决方法

问题出在kubeconform-helm钩子的默认文件匹配规则上,它默认只匹配charts/**/Chart.yaml路径下的文件,但你的Helm chart放在helms目录下,不在默认匹配范围内,导致钩子找不到要触发检测的文件。

修改.pre-commit-config.yaml,给钩子添加files字段,指定匹配你项目中的Chart.yaml路径:

repos:
  - repo: https://github.com/jtyr/kubeconform-helm
    rev: v0.1.16
    hooks:
      - id: kubeconform-helm
        args:
          - --verbose
          - --summary
        files: ^helms/.*/Chart.yaml$
  • ^helms/.*/Chart.yaml$这个正则会匹配helms目录下任意子目录中的Chart.yaml文件,正好对应你的helms/test-files/Chart.yaml。
  • 当钩子找到匹配的Chart.yaml后,会自动对该目录下的整个Helm chart(包括templates里的所有YAML)进行kubeconform校验。

修改后重新执行pre-commit run --all-files,钩子就会正常检测你的Helm文件了。

内容的提问来源于stack exchange,提问作者user9890324

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 21:32:40