Decomisión de openclaw
- Elimina manifests openclaw/ y argocd/application-openclaw.yaml - backup-system: fuera del backup diario, crown-jewels, expected y retain; fuera el mount hostPath del cronjob y la fila de RESTORE.md - monitoring: eliminado panel openclaw del dashboard homelab-overview - n8n: openclaw y polymarket fuera del health-check (espejo del workflow vivo) - cluster-wide/namespaces.yaml: fuera openclaw + añadidos separadores '---' que faltaban (el archivo era un único doc YAML donde ganaba el último ns) Cluster ya limpio: app ArgoCD, namespace, PVC/PV, RBAC cluster-scoped y monitor de Uptime Kuma. Backup final: ~/decommissioned/openclaw-final-2026-07-18.tar.gz Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@ data:
|
||||
#!/bin/bash
|
||||
# Backup diario del homelab. Imagen: bitnami/kubectl (bash GNU, corre en chemavx-k8).
|
||||
# Regla: cada artefacto se valida (gzip -t + tamaño mínimo) — un tar vacío
|
||||
# como el bug histórico de openclaw (104 bytes) cuenta como FALLO y el job sale 1
|
||||
# (bug histórico: tar de 104 bytes de una app ya decomisada) cuenta como FALLO y el job sale 1
|
||||
# (→ alerta Grafana homelab-backup-job-failed → Telegram).
|
||||
set -u
|
||||
|
||||
@@ -59,12 +59,6 @@ data:
|
||||
tar -czf "$BACKUP_DIR/n8n_${DATE}.tar.gz" -C /data/n8n . 2>/dev/null
|
||||
check "$BACKUP_DIR/n8n_${DATE}.tar.gz" 10000000 n8n
|
||||
|
||||
# === openclaw (PVC local-path; el hostPath /data/openclaw era un stub vacío) ===
|
||||
log "Backing up openclaw..."
|
||||
OC=$(pvpath openclaw openclaw-pvc)
|
||||
tar -czf "$BACKUP_DIR/openclaw_${DATE}.tar.gz" -C "$OC" . 2>/dev/null
|
||||
check "$BACKUP_DIR/openclaw_${DATE}.tar.gz" 50000 openclaw
|
||||
|
||||
# === homarr ===
|
||||
log "Backing up homarr..."
|
||||
HOMARR_DB=$(pvpath homarr homarr-db-pvc)
|
||||
@@ -189,7 +183,7 @@ data:
|
||||
\( -name "${1}_*.tar.gz" -o -name "${1}_*.sql.gz" -o -name "${1}_*.db.gz" \) | \
|
||||
sort | head -n -"$2" | xargs -r rm -f
|
||||
}
|
||||
for p in n8n openclaw homarr authentik-pg grafana k3s-db gitea \
|
||||
for p in n8n homarr authentik-pg grafana k3s-db gitea \
|
||||
ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content \
|
||||
researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden filebrowser-db; do
|
||||
retain "$p" 7
|
||||
@@ -257,7 +251,7 @@ data:
|
||||
|
||||
log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $*"; }
|
||||
BACKUP_DIR=/data/backups/backups
|
||||
CROWN="n8n openclaw homarr authentik-pg grafana k3s-db gitea ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden filebrowser-db home-master"
|
||||
CROWN="n8n homarr authentik-pg grafana k3s-db gitea ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden filebrowser-db home-master"
|
||||
|
||||
KEEP=/tmp/crown-jewels
|
||||
rm -rf "$KEEP"; mkdir -p "$KEEP"
|
||||
@@ -303,7 +297,7 @@ data:
|
||||
|
||||
log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $*"; }
|
||||
|
||||
EXPECTED_SERVICES="n8n openclaw homarr authentik-pg grafana k3s-db gitea ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden uptime-kuma filebrowser-db home-master"
|
||||
EXPECTED_SERVICES="n8n homarr authentik-pg grafana k3s-db gitea ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden uptime-kuma filebrowser-db home-master"
|
||||
ERRORS=0
|
||||
|
||||
# Ventana de frescura: backup y sync son diarios → un backup es "reciente"
|
||||
@@ -356,7 +350,7 @@ data:
|
||||
|
||||
# === Segundo offsite: B2 crown-jewels (todo menos uptime-kuma) ===
|
||||
log "=== Verificación de crown-jewels en B2 ==="
|
||||
CROWN="n8n openclaw homarr authentik-pg grafana k3s-db gitea ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden filebrowser-db home-master"
|
||||
CROWN="n8n homarr authentik-pg grafana k3s-db gitea ghost-en-db ghost-en-content zona-exclusion-db zona-exclusion-content researchowl roswell-pg umami-pg infisical-pg trilium vaultwarden filebrowser-db home-master"
|
||||
B2FILES=$(rclone ls b2:chemavx-k3s-backups/ --config /rclone/rclone.conf 2>&1)
|
||||
for svc in $CROWN; do
|
||||
FOUND=0
|
||||
|
||||
Reference in New Issue
Block a user