2bd8fcc0c2
- ci/generate-schemas.sh extracts schemas from live cluster CRDs via kubectl - Generated schemas committed to schemas/ for CI use - Run `make schemas` to regenerate after CRD or K8s version changes - validate-apps.sh and validate-clusters.sh check local schemas first - CRD instances (Gateway, TLSRoute, Pooler, etc.) now validated instead of skipped - CustomResourceDefinition meta-type still skipped (no schema exists upstream)
25 lines
650 B
Makefile
25 lines
650 B
Makefile
.PHONY: build clean schemas
|
|
|
|
# Build a kustomization path to manifests directory
|
|
# Usage: make build clusters/au-syd1/bootstrap
|
|
build:
|
|
@mkdir -p manifests/$(filter-out $@,$(MAKECMDGOALS))
|
|
@kustomize build --enable-helm $(filter-out $@,$(MAKECMDGOALS)) --output manifests/$(filter-out $@,$(MAKECMDGOALS))
|
|
|
|
# Generate JSON schemas from CRDs and Kubernetes swagger spec (run manually, results committed)
|
|
schemas:
|
|
@ci/generate-schemas.sh schemas
|
|
|
|
# kubeconform
|
|
kubeconform:
|
|
@ci/validate-apps.sh && \
|
|
ci/validate-clusters.sh
|
|
|
|
# Clean all generated manifests
|
|
clean:
|
|
@rm -rf manifests/
|
|
|
|
# Allow any argument after build to be treated as a path
|
|
%:
|
|
@:
|