1.9 KiB
Hanzo Runner Image
Custom GitHub Actions runner image used by all hanzoai/* ARC runner
scale sets on do-sfo3-hanzo-k8s.
Base: ghcr.io/actions/actions-runner:latest
Adds: kubectl, doctl, kustomize, helm, gh, jq, git, make,
unzip, openssh-client, build-essential, pkg-config, and the
amd64-host → arm64-target cross toolchain (gcc-aarch64-linux-gnu,
g++-aarch64-linux-gnu, libc6-dev-arm64-cross) plus musl-tools so
workflows can cross-compile CGO binaries (BLST, etc.) without per-job
apt-get install.
Published as ghcr.io/hanzoai/runner:X.Y.Z on tag pushes via
the canonical hanzoai/.github/docker-build.yml reusable workflow
(type=semver,pattern={{version}} strips the v prefix).
Current: 0.1.1. All four ARC scale sets on do-sfo3-hanzo-k8s
(hanzo-build-linux-amd64, hanzo-deploy-linux-amd64,
lux-build-linux-amd64, zoo-build-linux-amd64) are pinned to this tag.
Why
Workflows must not curl-install ops tools per run — that's a deferred pattern. Bake once, use everywhere. Single image, single source of truth for runner toolchain.
Consumers
ARC scale sets in actions-runner-system:
hanzo-build-linux-amd64hanzo-deploy-linux-amd64lux-build-linux-amd64zoo-build-linux-amd64
Update via the values file in
hanzo/platform/.github/runners/arc-runner-set-*-values.yaml then
helm upgrade.
arm64
Paused — DOKS does not currently offer arm64 droplets. Re-enable by
adding linux/arm64 to platforms: in .github/workflows/build.yml
when DO ships arm64 instances.
License
Dual-licensed MIT OR Apache-2.0 (LICENSE-MIT, LICENSE-APACHE), at the
user's option. Relicensed from BSD-3-Clause under HIP-0137 "One License"
(hanzoai/hips), which standardises original Hanzo work on the dual
permissive pair. The prior BSD copyright line carries forward unchanged
into LICENSE-MIT.