kubeconform Manifest schema validator
Light · Postcard
102 × 152 mm · PDF
Dark · Postcard
102 × 152 mm · PDF
Ink saver · Postcard
102 × 152 mm · PDF
Light · A4 landscape
297 × 210 mm · PDF
Dark · A4 landscape
297 × 210 mm · PDF
Ink saver · A4 landscape
297 × 210 mm · PDF
Light · A3 landscape
420 × 297 mm · PDF
Dark · A3 landscape
420 × 297 mm · PDF
Ink saver · A3 landscape
420 × 297 mm · PDF
Start here
kubeconform <file>
kubeconform <dir>
kubeconform -summary <dir>
kubeconform -strict <dir>
kubeconform -kubernetes-version 1.30.0 <dir>
kubeconform -ignore-missing-schemas <dir>
kubeconform -output pretty <dir>
helm template <chart> | kubeconform -
Concepts
- Manifests files, dirs, stdin
- Schema lookup kind + apiVersion
- Result valid / invalid / skipped
Running
kubeconform <file>
kubeconform <dir> <file>
kubeconform -kubeconform -summary <dir>
kubeconform -verbose <dir>
kubeconform -exit-on-error <dir>
kubeconform -ignore-filename-pattern
'<regex>' <dir>
kubeconform -n 16 <dir>
kubeconform -vkubeconform -hkubeconform -debug <dir>
Strictness and versions
kubeconform -strict <dir>
kubeconform -kubernetes-version 1.30.0 <dir>
kubeconform -ignore-missing-schemas <dir>
kubeconform -skip <kind>,<kind>
<dir>
kubeconform -skip v1/<Kind> <dir>
kubeconform -reject <kind> <dir>
Schemas and CRDs
kubeconform -schema-location default <dir>
kubeconform -schema-location
'<url-or-path-template>' <dir>
kubeconform -cache <dir> <manifests>
kubeconform -insecure-skip-tls-verify <dir>
| Variable | Expands to |
|---|---|
{{.ResourceKind}} |
Kind of the resource |
{{.ResourceAPIVersion}} |
Version part of apiVersion |
{{.Group}} |
API group |
{{.NormalizedKubernetesVersion}} |
Version with a v prefix |
{{.StrictSuffix}} |
-strict when -strict is set |
{{.KindSuffix}} |
Group and version suffix |
Output
kubeconform -output pretty <dir>
kubeconform -output json <dir>
kubeconform -output junit <dir>
kubeconform -output tap <dir>
kubeconform -output text <dir>
Recipes
helm template <release> <chart> -f values.yaml \ | kubeconform -strict -summary -kubernetes-version 1.30.0 -
kustomize build overlays/prod \ | kubeconform -strict -ignore-missing-schemas -summary -
kubeconform -strict -summary -schema-location default \ -schema-location 'https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/{{.Group}}/{{.ResourceKind}}_{{.ResourceAPIVersion}}.json' \ manifests/
mkdir -p /tmp/schemaskubeconform -cache /tmp/schemas -n 8 -output junit manifests/ > report.xml



