38 lines
1.2 KiB
Makefile
38 lines
1.2 KiB
Makefile
.DEFAULT_GOAL := help
|
|
|
|
INVENTORY ?= ansible/hosts.ini
|
|
|
|
##@ Safety Net
|
|
|
|
backup: ## Backup k3s etcd + Helm values + kubeconfig (age-encrypted, root required)
|
|
sudo tools/cmd/railiance-backup-s2
|
|
|
|
restore: ## List available backups and print restore guide
|
|
tools/cmd/railiance-restore-s2
|
|
|
|
preflight: ## Pre-migration safety gate — must pass before cluster work
|
|
bin/railiance preflight
|
|
|
|
##@ Kubernetes
|
|
|
|
k3s-install: ## Install k3s and Helm on all inventory hosts
|
|
ansible-playbook -i $(INVENTORY) ansible/bootstrap.yml
|
|
|
|
smoke: ## Run Kubernetes smoke tests
|
|
bash tests/smoke_kube.sh
|
|
|
|
test-ha-failover: ## Run HA failover test (D3) — kills primary PG pod, asserts recovery
|
|
bash tests/test_ha_failover.sh $(if $(GITEA_URL),$(GITEA_URL),)
|
|
|
|
verify-activity-core: ## Reconcile activity-core runtime and verify disabled ops inventory probe evidence
|
|
tools/cmd/railiance-verify-activity-core
|
|
|
|
##@ Help
|
|
|
|
help: ## Show this help
|
|
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} \
|
|
/^[a-zA-Z_-]+:.*?##/ { printf " \033[36m%-20s\033[0m %s\n", $$1, $$2 } \
|
|
/^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) }' $(MAKEFILE_LIST)
|
|
|
|
.PHONY: backup restore preflight k3s-install smoke test-ha-failover verify-activity-core help
|