Change the repository import path (-i) and target platforms (-p) according to your needs.
You can also use those images to run your tests by using the -T option.
Usage: builder.sh [args]
-i,--import-path arg : Go import path of the project
-p,--platforms arg : List of platforms (GOOS/GOARCH) to build separated by a space
-T,--tests : Go run tests then exit
Requirements
This building process is using make to build and run tests.
Therefore a Makefile with build and test targets is needed into the root of your source files.
Darwin CGO cross-compilation uses Zig as the C compiler,
combined with the macOS SDK provided by the GitHub-hosted macOS runner (the latest
SDK available at image build time). Builds target macOS 12 (Monterey) and later,
which is the minimum version supported by Go.
This is not a general-purpose macOS cross-compilation toolchain. It is scoped
to the CGO surface needed by Prometheus ecosystem projects and may not support
every CGO use case.
Prometheus Golang builder Docker images
Details
Docker Builder Image for cross-building Golang Prometheus projects.
latest,main,1.26.5-main,1.26.5-main(1.26.5/main/Dockerfile)arm,1.26.5-arm,1.26.5-arm(1.26.5/arm/Dockerfile)powerpc,1.26.5-powerpc,1.26.5-powerpc(1.26.5/powerpc/Dockerfile)mips,1.26.5-mips,1.26.5-mips(1.26.5/mips/Dockerfile)s390x,1.26.5-s390x,1.26.5-s390x(1.26.5/s390x/Dockerfile)1.25-main,1.25.12-main(1.25/main/Dockerfile)arm,1.25-arm,1.25.12-arm(1.25/arm/Dockerfile)powerpc,1.25-powerpc,1.25.12-powerpc(1.25/powerpc/Dockerfile)mips,1.25-mips,1.25.12-mips(1.25/mips/Dockerfile)s390x,1.25-s390x,1.25.12-s390x(1.25/s390x/Dockerfile)Usage
Change the repository import path (
-i) and target platforms (-p) according to your needs. You can also use those images to run your tests by using the-Toption.Requirements
This building process is using make to build and run tests. Therefore a
Makefilewithbuildandtesttargets is needed into the root of your source files.main/latest tag
arm tag
powerpc tag
mips tag
mips64/mips64le cross-build is currently available with golang 1.6.
Darwin/macOS CGO builds
Darwin CGO cross-compilation uses Zig as the C compiler, combined with the macOS SDK provided by the GitHub-hosted macOS runner (the latest SDK available at image build time). Builds target macOS 12 (Monterey) and later, which is the minimum version supported by Go.
This is not a general-purpose macOS cross-compilation toolchain. It is scoped to the CGO surface needed by Prometheus ecosystem projects and may not support every CGO use case.
Legal note
OSX/Darwin/Apple builds: Please ensure you have read and understood the Xcode license terms before continuing.
More information
circle.yml.#prometheuschannel onirc.freenode.net.Contributing
Refer to CONTRIBUTING.md
License
Apache License 2.0, see LICENSE.