Prepare static binaries for release targets and docker runtimes, and dynamic binaries for local development #3856
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Type of change
Description
This PR fixes two problems with the release-2.5 Makefile:
On rancher desktop,
TARGETOS
ANDTARGETARCH
are not automatically set by the "docker" build agent, leading to an error when building the image locally withoutbuildx
or builders from docker.io. This sets the variables tolinux
andgo env GOARCH
when building the containers locally, aligning with the default values set by buildx.The introduction of statically linked binaries was necessary for running ARM64 on the Alpine containers, but it caused a regression and forced the peer to sigsegv when built locally on an emulated ubuntu64 linux. With this update, the locally built peer images will continue to be created as dynamically linked binaries, with the static linking enabled only for the release target and for binaries deployed to alpine in Docker.
Related issues