Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QCy5VHMVLkAmftYM6swWmx
50 lines
2.2 KiB
Bash
Executable File
50 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# El tablero de pendientes desde la Mac (21-oct-2026).
|
|
# Claude no llega al servidor: deja sus cambios al tablero en lotes (backend/lotes/*.json) y lee el
|
|
# tablero en la foto (_estado/, fuera de git). Este script lleva los lotes y trae la foto.
|
|
#
|
|
# ./scripts/tablero.sh foto baja pendientes, enfoque y actividad a _estado/ (solo lee)
|
|
# ./scripts/tablero.sh revisar sube los lotes y muestra qué cambiaría cada uno (no escribe)
|
|
# ./scripts/tablero.sh aplicar los aplica (lo ya aplicado se salta) y baja la foto nueva
|
|
# ./scripts/tablero.sh estado foto + una línea con lo que falta aplicar (lo llama deploy.sh)
|
|
#
|
|
# Variables: REMOTE (leo@git.helgen.online), SSH_PORT (22), BACKEND_PATH (…/hbox-docs/backend).
|
|
# Formato de los lotes y reglas: backend/lotes/README.md.
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
|
|
REMOTE="${REMOTE:-leo@git.helgen.online}"
|
|
PORT="${SSH_PORT:-22}"
|
|
BACKEND_PATH="${BACKEND_PATH:-/srv/projects/drogheda/hbox-docs/backend}"
|
|
PY="$BACKEND_PATH/venv/bin/python3" # el mismo Python del servicio; tablero.py solo usa la biblioteca estándar
|
|
|
|
subir() {
|
|
rsync -az -e "ssh -p $PORT" backend/tablero.py "$REMOTE:$BACKEND_PATH/"
|
|
rsync -az -e "ssh -p $PORT" backend/lotes/ "$REMOTE:$BACKEND_PATH/lotes/" # sin --delete
|
|
}
|
|
|
|
remoto() { # remoto <acción> → corre tablero.py en el servidor
|
|
ssh -p "$PORT" "$REMOTE" "$PY $BACKEND_PATH/tablero.py $1 $BACKEND_PATH/lotes"
|
|
}
|
|
|
|
foto() {
|
|
mkdir -p _estado
|
|
if ssh -p "$PORT" "$REMOTE" "$PY $BACKEND_PATH/tablero.py foto" > _estado/tablero.json.nuevo; then
|
|
mv _estado/tablero.json.nuevo _estado/tablero.json
|
|
python3 backend/tablero.py resumen _estado/tablero.json > _estado/tablero.md
|
|
echo "Foto del tablero en _estado/tablero.md ($(grep -c '^- ' _estado/tablero.md || true) líneas)"
|
|
else
|
|
rm -f _estado/tablero.json.nuevo
|
|
echo "No se pudo bajar la foto del tablero (¿el servicio actas-hbox está arriba?)" >&2
|
|
return 2
|
|
fi
|
|
}
|
|
|
|
case "${1:-}" in
|
|
foto) subir; foto ;;
|
|
revisar) subir; remoto revisar ;;
|
|
aplicar) subir; remoto aplicar; foto ;;
|
|
estado) subir; foto; remoto pendientes ;;
|
|
*) sed -n '2,12p' "$0" | sed 's/^# \{0,1\}//'; exit 1 ;;
|
|
esac
|