-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump to exact Go versions during update-golang
#2757
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
geigerj0
commented
Mar 13, 2024
geigerj0
added
the
allow-acceptance-tests
This label needs to be added to enable the acceptance tests to run.
label
Mar 13, 2024
silvestre
approved these changes
Mar 13, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
Very nice simplifications by editing the go.{mod,work}
files with go
. ❤️
Quality Gate passedIssues Measures |
This was referenced Apr 4, 2024
silvestre
pushed a commit
that referenced
this pull request
Apr 5, 2024
# Problem Go tries to download a specific toolchain version whenever the required version is not available on the system. The following PR introduced the exact Go toolchain version pinning #2757. Requiring an exact Go toolchain version can make the acceptance tests execution fail in an environment that has no connectivity to the public internet. Here is a sample failure from an execution in China which tries to download a required toolchain version: ``` download go1.21.4: golang.org/[email protected]: Get "https://proxy.golang.org/golang.org/toolchain/@v/v0.0.1-go1.21.4.linux-amd64.zip": dial tcp 172.217.163.49:443: i/o timeout ``` # Solution Compile test suites and ginkgo CLI for * `linux` (`amd64`, `arm64`) * `darwin` (`amd64`, `arm64`) Acceptance test executions with no public internet access can make use of these binaries.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
allow-acceptance-tests
This label needs to be added to enable the acceptance tests to run.
exclude-from-changelog
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.
Problem
As of Go
1.21
, versions specified ingo.mod
files are treated not as a guideline but as a strict rule. Also,go 1.21
is automatically being mapped to1.21.0
.The following example basically says that Go
1.21.0
is requiredapp-autoscaler-release/src/autoscaler/go.mod
Line 3 in 13755c9
Which causes problems because the "
1.21
->1.21.0
mapping" doesn't work forgo.work
filesapp-autoscaler-release/go.work
Line 1 in 13755c9
Example of a failing CI build:
go.work file requires go >= 1.21.0, but go.work lists go 1.21.
Solution
go.work
during the bumping process.Somewhat related changes
go.mod
- andgo.work
files to the currently used version1.21.3
Create Bosh Release
pipeline future proof for Go>=1.22.0
, see Bump to exact Go versions duringupdate-golang
#2757 (comment)