#!/usr/bin/env bash # Build GLM-5.2 NF3-Hybrid Docker image for DGX Spark (aarch64/sm_121a) # All build inputs are version-pinned in versions.env and locks/. set -euo pipefail cd "$(dirname "$0")" TAG="${TAG:-vllm-nf3-hybrid:probe}" source versions.env ARGS="" for v in CUDA_BASE_IMAGE CUDA_BASE_DIGEST UV_VERSION \ TORCH_VERSION TORCHVISION_VERSION TORCHAUDIO_VERSION TRITON_VERSION \ PYTORCH_INDEX_URL PYPI_INDEX_URL \ NVSHMEM_VERSION TVM_FFI_VERSION TILELANG_VERSION NUMBA_VERSION \ NCCL_REPO NCCL_REF \ VLLM_REPO VLLM_REF VLLM_COMMIT \ B12X_REPO B12X_REF B12X_COMMIT \ FLASHINFER_REPO FLASHINFER_REF \ CUTLASS_DSL_VERSION \ TORCH_CUDA_ARCH_LIST FLASHINFER_CUDA_ARCH_LIST GB10_BUILD; do val="${!v:-}" [ -n "$val" ] && ARGS="$ARGS --build-arg ${v}=${val}" done echo "=== Building ${TAG} ===" DOCKER_BUILDKIT=1 docker build $ARGS --progress=plain -t "${TAG}" -f Dockerfile . 2>&1 echo "=== Done: ${TAG} ==="