#!/usr/bin/env bash # Reverse of runmefirst.sh — tears down DCOS deployment but preserves PVCs (data survives) # Usage: runmelast.sh set -uo pipefail NAMESPACE="dcos-service" echo "=== DCOS Teardown ===" # --- 1. Delete all deployments and statefulsets --- echo "[1/4] Deleting deployments..." kubectl delete deployment dcos -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true kubectl delete statefulset --all -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true # --- 2. Delete services and ingresses --- echo "[2/4] Cleaning up services..." kubectl delete service dcos -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true kubectl delete ingress --all -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true # --- 3. Delete secrets and configmaps --- echo "[3/4] Cleaning up secrets..." kubectl delete secret dcos-db-secret -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true kubectl delete configmap --all -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true # --- 4. Delete PVCs (data preserved for redeploy) --- echo "[4/4] Cleaning up PVCs..." kubectl delete pvc --all -n "$NAMESPACE" --ignore-not-found=true 2>/dev/null || true # NOTE: namespace is kept intact so Helm labels persist for clean redeploy echo "" echo "=== Teardown complete ===" echo "" echo "Preserved (untouched):" echo " - Namespace $NAMESPACE (kept for Helm label compatibility)" echo " - PostgreSQL database 'dcos' and user 'celes' in postgresql-service" echo " - Redis data in redis-service" echo "" echo "To redeploy: bash ~/sources/kube/dcos/runmefirst.sh"