fix(ci): runme-ci.sh vuelve a fallar con nombres exactos; usar --dry-run
CI / validate-and-build (push) Successful in 7s
CI / runme (push) Successful in 9s

El intento anterior (correr cada celda por nombre, sin --all) también
aborta en el runner real ("Parsing files..." → "could not execute
command: aborted") — el problema no era --all. --dry-run sí funciona en
ese runner (nunca ejecuta nada él mismo), pero escribe el script
resuelto a stderr, no a stdout: el primer intento de "| bash" no
ejecutaba nada porque el pipe sólo captura stdout, y lo que se veía en
pantalla era stderr yendo directo a la terminal. Corregido con "2>&1
>/dev/null | bash". Probado localmente de extremo a extremo: las 4
celdas ejecutan de verdad (incluye verify-head devolviendo valid:true
real, no sólo el texto del comando).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-27 01:50:57 -06:00
co-authored by Claude Sonnet 5
parent 064b5d5bb8
commit 38c04ca62f
2 changed files with 34 additions and 22 deletions
+16 -11
View File
@@ -59,21 +59,26 @@ ninguna llave privada real.
## Ejecutar
`make runme-ci` corre `scripts/runme-ci.sh`, que invoca cada celda `ci-safe`
por su nombre exacto, una por una, deteniéndose en el primer fallo:
Localmente, fuera de este runner, `runme run --filename RUNBOOK.md --tag
ci-safe --all --skip-prompts` funciona normalmente. En este repositorio,
`make runme-ci` en cambio corre `scripts/runme-ci.sh`, que para cada celda
`ci-safe` extrae su script con `runme run --dry-run <celda>` (nunca ejecuta
nada por sí solo) y lo corre con `bash`, deteniéndose en el primer fallo:
```text
runme run --filename RUNBOOK.md --skip-prompts clusterlog-runme-preflight
runme run --filename RUNBOOK.md --skip-prompts clusterlog-sync-check
runme run --filename RUNBOOK.md --skip-prompts clusterlog-validate-local
runme run --filename RUNBOOK.md --skip-prompts clusterlog-verify-head
runme run --filename RUNBOOK.md --dry-run clusterlog-runme-preflight | bash
runme run --filename RUNBOOK.md --dry-run clusterlog-sync-check | bash
runme run --filename RUNBOOK.md --dry-run clusterlog-validate-local | bash
runme run --filename RUNBOOK.md --dry-run clusterlog-verify-head | bash
```
No usa `runme run --tag ci-safe --all`: esa forma sí funciona en una
terminal normal, pero en el runner real de esta instancia aborta al entrar a
su UI interactiva de progreso multi-tarea (no se pudo reproducir en local
para diagnosticarlo más a fondo — ver `scripts/runme-ci.sh`). Invocar cada
celda por nombre evita esa ruta de código.
Tanto `runme run --all` como invocar cada celda por nombre (sin `--all`)
abortan de inmediato en el runner real de esta instancia
("could not execute command: aborted", justo al entrar a "Parsing
files..."), algo que no se pudo reproducir en ninguna terminal local. Sólo
`--dry-run` evita esa ruta de código en ambos lados — ver `scripts/runme-ci.sh`
para el detalle completo, incluida la comprobación real
(`clusterlog-verify-head` corriendo y devolviendo `valid: true` de verdad).
Nunca ejecute `runme run --all --skip-prompts` sobre este archivo ni sobre
`runbooks/weekly-review.md`: sin filtrar por nombre o etiqueta, `--all`