Add JSON schema generation for kubeconform CRD validation
ci/woodpecker/pr/kubeconform Pipeline failed
ci/woodpecker/pr/pre-commit Pipeline was successful

- ci/generate-schemas.sh fetches CRDs from the cluster via kubectl, supplements
  with offline CRD manifests (ArgoCD, Gateway API) and Kubernetes swagger spec
- Schemas use Datree catalog convention: <group>/<Kind>_<version>.json
- validate-apps.sh and validate-clusters.sh check local schemas first
- Makefile schemas target runs before kubeconform
This commit is contained in:
2026-06-28 16:53:11 +10:00
parent cfca1e5278
commit 42dbecc2b7
5 changed files with 146 additions and 1 deletions
+3
View File
@@ -3,7 +3,10 @@ set -euo pipefail
KUBE_VERSION="1.33.7"
SCHEMA_DIR="${SCHEMA_DIR:-schemas}"
schema_args=(
-schema-location "$SCHEMA_DIR/{{.Group}}/{{.ResourceKind}}_{{.ResourceAPIVersion}}.json"
-schema-location "https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/yannh/kubernetes-json-schema/master/{{.NormalizedKubernetesVersion}}-standalone{{.StrictSuffix}}/{{.ResourceKind}}{{.KindSuffix}}.json"
-schema-location "https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/datreeio/CRDs-catalog/main/{{.Group}}/{{.ResourceKind}}_{{.ResourceAPIVersion}}.json"
)