mirror of
https://github.com/hanzoai/runner.git
synced 2026-10-30 18:23:07 +00:00
Adds gcc-aarch64-linux-gnu, g++-aarch64-linux-gnu, libc6-dev-arm64-cross, build-essential, pkg-config, musl-tools to the runner image so workflows cross-compiling linux/arm64 (CGO_ENABLED=1, BLST, etc.) on hanzo-build-linux-amd64 don't pay 30-60s per job for inline apt-get. Bumps tag to v0.1.1 (patch only, no behavior change for existing users).
47 lines
2.0 KiB
Docker
47 lines
2.0 KiB
Docker
FROM ghcr.io/actions/actions-runner:latest
|
|
|
|
USER root
|
|
|
|
ARG KUBECTL_VERSION=v1.32.1
|
|
ARG DOCTL_VERSION=1.124.0
|
|
ARG KUSTOMIZE_VERSION=v5.5.0
|
|
ARG HELM_VERSION=v3.16.4
|
|
|
|
SHELL ["/bin/bash", "-eo", "pipefail", "-c"]
|
|
|
|
RUN set -eux; \
|
|
apt-get update; \
|
|
apt-get install -y --no-install-recommends \
|
|
ca-certificates curl jq git unzip make gnupg openssh-client \
|
|
build-essential pkg-config \
|
|
gcc-aarch64-linux-gnu g++-aarch64-linux-gnu libc6-dev-arm64-cross \
|
|
musl-tools; \
|
|
arch="$(dpkg --print-architecture)"; \
|
|
curl -fsSLo /usr/local/bin/kubectl \
|
|
"https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/${arch}/kubectl"; \
|
|
chmod +x /usr/local/bin/kubectl; \
|
|
curl -fsSL "https://github.com/digitalocean/doctl/releases/download/v${DOCTL_VERSION}/doctl-${DOCTL_VERSION}-linux-${arch}.tar.gz" \
|
|
| tar -xz -C /usr/local/bin doctl; \
|
|
curl -fsSL "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2F${KUSTOMIZE_VERSION}/kustomize_${KUSTOMIZE_VERSION}_linux_${arch}.tar.gz" \
|
|
| tar -xz -C /usr/local/bin kustomize; \
|
|
curl -fsSL "https://get.helm.sh/helm-${HELM_VERSION}-linux-${arch}.tar.gz" \
|
|
| tar -xz --strip-components=1 -C /usr/local/bin "linux-${arch}/helm"; \
|
|
install -m 0755 -d /etc/apt/keyrings; \
|
|
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg \
|
|
| gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg; \
|
|
chmod 0644 /etc/apt/keyrings/githubcli-archive-keyring.gpg; \
|
|
echo "deb [arch=${arch} signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" \
|
|
> /etc/apt/sources.list.d/github-cli.list; \
|
|
apt-get update; \
|
|
apt-get install -y --no-install-recommends gh; \
|
|
rm -rf /var/lib/apt/lists/*; \
|
|
kubectl version --client=true; \
|
|
doctl version; \
|
|
kustomize version; \
|
|
helm version --short; \
|
|
gh --version | head -1; \
|
|
aarch64-linux-gnu-gcc --version | head -1; \
|
|
musl-gcc --version | head -1
|
|
|
|
USER runner
|