.PHONY: help
help: ## Display this help.
	@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n  make \033[36m<target>\033[0m\n"} /^[a-zA-Z_0-9-]+:.*?##/ { printf "  \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)

.PHONY: dev
dev: ## Start dev environment
	@ctlptl apply -f ./dev/cluster.yaml
	@minikube addons enable metrics-server
	@tilt up -f ./dev/Tiltfile

.PHONY: down
down: ## Stop tilt (keeps cluster)
	@tilt down -f ./dev/Tiltfile

.PHONY: nuke
nuke: ## Delete minikube cluster entirely
	@minikube delete


.PHONY: teral
teral: 
	@set -a; [ -f .env ] && . ./.env; set +a; bazel run --ui_event_filters=-info --noshow_progress //:teral -- $(filter-out teral,$(MAKECMDGOALS)) $(ARGS)

# Catch-all to swallow extra args passed to teral target (only when teral is called)
ifneq ($(filter teral,$(MAKECMDGOALS)),)
%:
	@:
endif