31 lines
932 B
Makefile
31 lines
932 B
Makefile
.PHONY: build clean schemas
|
|
|
|
MAKEFILE_DIR := $(patsubst %/,%,$(dir $(abspath $(lastword $(MAKEFILE_LIST)))))
|
|
KUBE_VERSION := $(strip $(shell cat $(MAKEFILE_DIR)/ci/kube-version 2>/dev/null))
|
|
ifeq ($(KUBE_VERSION),)
|
|
$(error cannot read $(MAKEFILE_DIR)/ci/kube-version)
|
|
endif
|
|
|
|
# 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 --helm-kube-version $(KUBE_VERSION) $(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
|
|
%:
|
|
@:
|