Problem to solve
I am trying to build the GitLab runner and helper from source code on an arm64 Macbook. However, the helper image doesn’t support the arm64 build environment. According to the documentation, the command make runner-and-helper-docker-host
is a superset of make runner-bin-host
ref. If the runner and helper are the same go binary, why is building the helper on arm64 not supported, but the runner is?
error:
gitlab-runner-helper
go: unsupported GOOS/GOARCH pair arm64/arm64
Steps to reproduce
follow instructions on Contribute to GitLab Runner development using an arm64 mac.
Configuration
runner supported build env
BASE_BINARY_PATH := out/binaries/$(NAME)
BINARIES := ${BASE_BINARY_PATH}-linux-amd64
BINARIES += ${BASE_BINARY_PATH}-linux-arm64
BINARIES += ${BASE_BINARY_PATH}-linux-386
BINARIES += ${BASE_BINARY_PATH}-linux-arm
BINARIES += ${BASE_BINARY_PATH}-linux-s390x
BINARIES += ${BASE_BINARY_PATH}-linux-ppc64le
BINARIES += ${BASE_BINARY_PATH}-linux-riscv64
BINARIES += ${BASE_BINARY_PATH}-darwin-amd64
BINARIES += ${BASE_BINARY_PATH}-darwin-arm64
BINARIES += ${BASE_BINARY_PATH}-freebsd-386
BINARIES += ${BASE_BINARY_PATH}-freebsd-amd64
BINARIES += ${BASE_BINARY_PATH}-freebsd-arm
BINARIES += ${BASE_BINARY_PATH}-windows-386.exe
BINARIES += ${BASE_BINARY_PATH}-windows-amd64.exe
helper supported build env
BASE_BINARY_PATH := out/binaries/gitlab-runner-helper/gitlab-runner-helper
BINARIES := ${BASE_BINARY_PATH}.windows-amd64.exe
BINARIES += ${BASE_BINARY_PATH}.linux-amd64
BINARIES += ${BASE_BINARY_PATH}.linux-arm
BINARIES += ${BASE_BINARY_PATH}.linux-arm64
BINARIES += ${BASE_BINARY_PATH}.linux-s390x
BINARIES += ${BASE_BINARY_PATH}.linux-ppc64le
BINARIES += ${BASE_BINARY_PATH}.linux-riscv64
BINARIES += ${BASE_BINARY_PATH}.linux-amd64-fips
Both files were updated about a week ago (16Dec2024).
Wondering if this is a miss or intentional.
Versions
After building custom runners, the intention is to self-host them for our dedicated instance.
- Self-managed
-
GitLab.com
SaaS - Dedicated
- Self-hosted Runners