build(goreleaser): build with explicit CGO_ENABLED=0 #826
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.
A gotcha of using Go 1.20 is that if you build a binary on Ubuntu 22.04, it won't run on Ubuntu 20.04 (or earlier).
You'll see the following error:
The Fastly CLI does not knowingly use any external CGO, only stdlib.
The issue is caused by changes in GLIBC, between the OS versions, and this can be solved by building it on an older version (e.g. building on Ubuntu 20.04).
Alternatively, we can set
CGO_ENABLED=0
(this is the approach taken in this PR), which forces Go to use internal libraries. It's unclear if this will introduce any other issues so we may need to revert to the first approach of building with an older OS.