Files
railiance-cluster/Makefile
Bernd Worsch 66f8ca4009
Some checks failed
railiance-tests / smoke (push) Has been cancelled
docs(wp-0004): add implementation notes for sudo, etcd, helm, cron
T02: note to verify etcd is in use before implementing; flags root requirement
T03: add KUBECONFIG to helm commands; note root access approach
T06: document solution to sudo problem — run cron under root's crontab,
     not a sudoers whitelist. Add restore drill commands. Fix cron to use
     absolute path (~ unreliable in root crontab).
T01: note to remove old railiance-backup script (wrong scope)
Makefile: fix stale backup description, add restore target, fix .PHONY

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-10 16:52:40 +00:00

35 lines
1.1 KiB
Makefile

.DEFAULT_GOAL := help
INVENTORY ?= ansible/hosts.ini
##@ Safety Net
backup: ## Backup k3s etcd + Helm values + kubeconfig (age-encrypted, root required)
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),)
##@ 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 help