bootstrap: CA bundle para el TLS de cargo vendor en la VM
Con red, `cargo vendor` resolvió crates.io (DNS OK) pero el TLS falló: la VM no tenía CA bundle en /etc/ssl/certs/ca-certificates.crt ([77] SSL CA cert). El toolchain trae el bundle de Alpine; rebuild-stage1 lo copia a la ruta estándar y exporta SSL_CERT_FILE/CURL_CA_BUNDLE/GIT_SSL_CAINFO (cargo usa libcurl/openssl según el build). Penúltimo eslabón del vendoring Rust offline-asistido. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
09034a5e2b
commit
fd20e38d38
@@ -522,6 +522,13 @@ if ip link show eth0 >/dev/null 2>&1; then
|
||||
ip route add default via 10.0.2.2 2>/dev/null || true
|
||||
printf 'nameserver 10.0.2.3\n' > /etc/resolv.conf
|
||||
echo ">> red eth0: $(ip -4 -o addr show eth0 2>/dev/null | grep -o 'inet [0-9.]*' || echo down)"
|
||||
# CA bundle para el TLS de cargo/curl/git (crates.io). El toolchain trae el bundle de Alpine;
|
||||
# lo exponemos en la ruta estándar y por env (cargo usa libcurl/openssl según el build).
|
||||
mkdir -p /etc/ssl/certs
|
||||
cp -f /toolchain/etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt 2>/dev/null || true
|
||||
export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
|
||||
export CURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
|
||||
export GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt
|
||||
fi
|
||||
# NOTA: el initramfs debe empaquetarse con `cpio --owner=root:root`. Si los ficheros del toolchain
|
||||
# quedan con el uid del que armó el builder (p. ej. 1000), ese uid no está mapeado en el userns de
|
||||
|
||||
Reference in New Issue
Block a user