From c6e0e94a0db255c93268b461c2b579152df41519 Mon Sep 17 00:00:00 2001 From: Cristian Felipe Cruz Buitron Date: Sat, 26 Sep 2026 17:02:51 +0000 Subject: [PATCH] fix(tmux-host): supervisar healthcheck.sh y quitar set -e del entrypoint healthcheck.sh corria en background sin nadie que lo relanzara si moria. Se agrega un supervisor que lo relanza tras 10s y deja un WARN en health.log. Se cambia `set -eu` por `set -u`: con -e heredado, el propio subshell del supervisor moria en cuanto healthcheck.sh salia con error, antes de llegar a la linea que lo relanzaba. Ya desplegado en la imagen tmux-host:2026-09-26-fix-real (validado en vivo: relanzo tras exit=137 el 2026-09-26 05:04Z). Ver playbook incidente-tmux-host-cadena-fallos-2026-09-25 en docs-portal. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_018r19s4H8MBGegqToqw5guP --- tmux-host/entrypoint.sh | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tmux-host/entrypoint.sh b/tmux-host/entrypoint.sh index 3e693fd..ed93d35 100755 --- a/tmux-host/entrypoint.sh +++ b/tmux-host/entrypoint.sh @@ -2,8 +2,16 @@ # Proceso principal (PID 1) del contenedor tmux-host: lanza el chequeo de # salud en background y mantiene el contenedor vivo, igual que el # `tail -f /dev/null` del `docker run` inline original. -set -eu +set -u -/usr/local/bin/healthcheck.sh & +supervise_healthcheck() { + while true; do + /usr/local/bin/healthcheck.sh + echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) WARN: healthcheck.sh salio inesperadamente (exit=$?) -- relanzando en 10s" \ + >> /DATA/AppData/k3d-lab-v3/tmux-host/logs/health.log 2>/dev/null || true + sleep 10 + done +} +supervise_healthcheck & exec tail -f /dev/null