lab re-pineado con lld (d1e341d5) — y el sha «determinista» lo ensuciaba un log

Al ir a re-pinear la imagen para propagar el `lld` a la granja, hub y worker empaquetaron a shas
DISTINTOS. La imagen se creó para que el sha VERIFIQUE, así que un desacuerdo ahí no se pinea: se
mide.

Los dos rootfs son idénticos: 9550 entradas con la misma lista de ficheros, los mismos tamaños, y
CERO diferencias de metadato (modo, nlink, destino de symlink) en las 8778 entradas de fichero y
symlink. La única diferencia de contenido en todo el rootfs era `var/log/apk.log`, donde apk anota
la FECHA de cada operación — o sea que dos labs equivalentes empaquetaban distinto sólo porque las
instalaciones ocurrieron en momentos distintos. Un sha que no se puede reproducir desde un rootfs
equivalente no verifica nada, que es justo lo que este fichero existe para dar.

Se excluye ese log del tar (no todo `var/log`: cambio mínimo; apk lo recrea solo). Con la exclusión,
hub y worker dan el MISMO tar: 179d04f054f28d8dafe7c626d6b8c686a33a00a96715ee544a9bcf6f62cf586d.

⇒ LA GRANJA YA ESTABA SINCRONIZADA Y AHORA SE PUEDE DEMOSTRAR, sin correr `--traer` en un worker que
está construyendo firefox — reemplazarle el rootfs a mitad de build habría sido la forma cara de
descubrir lo mismo.

Nueva imagen publicada: hammer/lab/lab-d1e341d5….tar.zst (310 M), pin actualizado en
bootstrap-devfs.sh. Queda en el comentario cómo comparar dos máquinas: se compara el TAR y no el
`.tar.zst`, porque el sha comprimido depende de la versión de zstd de cada máquina y dos labs
idénticos con zstd distintos darían un falso desacuerdo.
This commit is contained in:
Sergio
2026-09-05 03:49:56 +00:00
parent b38e121a6b
commit 442a319499
2 changed files with 23 additions and 1 deletions
+1 -1
View File
@@ -79,7 +79,7 @@ mkdir -p "$DEVFS" "$TOOLS" "$CACHE" "$WORK"
# `--from-scratch` recupera el camino viejo (minirootfs + apk). Es como se FABRICA una imagen nueva:
# ./scripts/bootstrap-devfs.sh --from-scratch && ./scripts/lab-image.sh --crear
# y después se pinea el sha nuevo acá abajo. Reconstruir el corpus es el precio de ese cambio.
LAB_IMAGE_SHA256="${LAB_IMAGE_SHA256:-8ae9792aa66477457bf2f69287838fb68707964904a81e5f70d08feed9ec9ca2}"
LAB_IMAGE_SHA256="${LAB_IMAGE_SHA256:-d1e341d5dd434a11e2290b0340069ce4a83563eac8e4481f379b4951b1162045}"
if [[ $FROM_SCRATCH -eq 0 ]] && [[ ! -f "$ROOTFS/bin/busybox" ]]; then
log "rootfs: trayendo la imagen pineada del lab"