granja: golden NUEVA con Rust y Go — desbloquea el 76% del catálogo
Imagen 417847948 («hammer-golden-rust-go-2026-08-08») reemplaza a 408909310 como default de farm-up. EL PROBLEMA QUE CIERRA: hammer invoca `cargo vendor` y el toolchain Go en el HOST, no dentro del sandbox — el vendoreo pasa ANTES de entrar a la caja. La golden vieja no los traía, así que la granja no podía construir NINGUNA receta Rust ni Go: COSMIC entero, las 228 Rust y las 362 Go del corpus. El 76% del catálogo dependía de UNA SOLA máquina, el hub — justo lo que el respaldo de ayer intentaba dejar de asumir. VERIFICADO ANTES DE SNAPSHOTEAR, no después: `cosmic-bg` —que minutos antes moría con `spawn cargo vendor: No such file`— sella en el worker. Un snapshot de una máquina a medio arreglar es peor que ninguno. MISMAS VERSIONES QUE EL HUB (cargo/rustc 1.96.0, go 1.26.4) a propósito: introducir un skew de toolchain nuevo mientras se arregla otro es cómo se fabrican los fallos que nadie reproduce. Y 1.96 es además el techo MSRV del sandbox ya documentado. NO RELAJA LA HERMETICIDAD: cargo/go son herramientas de FETCH, del mismo orden que `git` para clonar. El build sigue ocurriendo dentro del sandbox con el árbol ya vendoreado. Es lo contrario del caso «no engordar el rootfs del worker», que habla del rootfs DEL SANDBOX. El PATH queda persistido en /etc/profile.d/hammer-toolchain.sh para que sobreviva a los logins no interactivos de la granja. Y la imagen trae el store del worker al momento del snapshot (KDE y GNOME reconstruidos hoy), así que los workers nuevos arrancan con más caché. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+17
-1
@@ -19,7 +19,23 @@
|
||||
set -euo pipefail
|
||||
|
||||
N="${1:-1}"
|
||||
IMAGE="${IMAGE:-408909310}"
|
||||
# ── GOLDEN 417847948 (2026-08-08): la anterior NO TENÍA RUST NI GO ─────────────────────────────
|
||||
# `hammer` invoca `cargo vendor` (y el toolchain Go) en el HOST, no dentro del sandbox: el vendoreo
|
||||
# pasa ANTES de entrar a la caja. La golden vieja (408909310) no los traía, así que la granja no
|
||||
# podía construir NINGUNA receta Rust ni Go — o sea COSMIC entero, las 228 Rust y las 362 Go del
|
||||
# corpus: **el 76% del catálogo sólo se podía construir en el hub**, una sola máquina.
|
||||
#
|
||||
# Esta imagen añade cargo/rustc 1.96.0 y go 1.26.4, **las mismas versiones que el hub**, para no
|
||||
# introducir un skew de toolchain nuevo mientras se arregla otro. Verificado antes de snapshotear:
|
||||
# `cosmic-bg` —que minutos antes moría con `spawn cargo vendor: No such file`— sella en el worker.
|
||||
#
|
||||
# NO relaja la hermeticidad: cargo/go son herramientas de FETCH, del mismo orden que `git` para
|
||||
# clonar. El build sigue ocurriendo dentro del sandbox con el árbol ya vendoreado. Es lo contrario
|
||||
# del caso «no engordar el rootfs del worker», que habla del rootfs DEL SANDBOX.
|
||||
#
|
||||
# Trae además el store del worker al momento del snapshot (KDE y GNOME reconstruidos el 2026-08-08),
|
||||
# así que los workers nuevos arrancan con más caché que antes.
|
||||
IMAGE="${IMAGE:-417847948}"
|
||||
TYPE="${TYPE:-ccx23}"
|
||||
LOCATION="${LOCATION:-hel1}"
|
||||
SSHKEY="${SSHKEY:-desarrollo@jlsoltech.com}"
|
||||
|
||||
Reference in New Issue
Block a user