-
Notifications
You must be signed in to change notification settings - Fork 243
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
go.mod: Update gvisor-tap-vsock to latest release #3861
Conversation
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: praveenkumar The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/hold It is failing for e2e with following error.
|
With this change, we need go 1.20 or 1.21 everywhere |
@cfergeau we already have go-1.20 everywhere as of now, even the openshift CI side? |
Seeing the e2e error, there must be one location which still has 1.19 or older. |
It's microshift e2e which is failing, and the logs show:
|
|
you mean during https://github.com/openshift/release/blob/2b5d87adbb1d3922afdd051c7a489d03057a8376/ci-operator/step-registry/code-ready/crc/microshift/test/code-ready-crc-microshift-test-commands.sh#L46C3-L46C28 part because the |
Yes, would be best to build everything on the same machine, and only copy pre-built binaries to gcloud. |
New changes are detected. LGTM label has been removed. |
(removed |
1b66c1f
to
820710a
Compare
I created openshift/release@master...cfergeau:release:prebuilt and updated this PR, but I don't know what is the best way forward for this openshift-release PR. Just file it? |
Makefile
Outdated
@@ -235,9 +235,6 @@ endif | |||
ifndef CRC_BINARY | |||
CRC_BINARY = --crc-binary=$(GOPATH)/bin | |||
endif | |||
ifndef VERSION_TO_TEST | |||
VERSION_TO_TEST = --crc-version=$(CRC_VERSION)+$(COMMIT_SHA) | |||
endif | |||
e2e: | |||
@go test --timeout=180m $(MODULEPATH)/test/e2e -tags "$(BUILDTAGS)" --ldflags="$(VERSION_VARIABLES)" -v $(PULL_SECRET_FILE) $(BUNDLE_LOCATION) $(CRC_BINARY) $(GODOG_OPTS) $(CLEANUP_HOME) $(VERSION_TO_TEST) $(INSTALLER_PATH) $(USER_PASSWORD) |
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.
should we remove $(VERSION_TO_TEST)
as part of e2e target?
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.
Since there is a ifndef VERSION_TO_TEST
check, the code assumes VERSION_TO_TEST
can be overridden externally (eg VERSION_TO_TEST="--crc-version=0.1.2" make e2e
).
If we keep it, it will expand to the empty string if unset, which is fine, and the previous behaviour will be unchanged if it's set.
Imo it's better to keep it.
I'm going to split this, first the CI changes, once they are merged, we can merge the corresponding openshift/release changes, and then this gvisor-tap-vsock PR. |
Created #3876 with all the changes from this PR except for the gvisor-tap-vsock update. |
openshift/release#44572 is created on openshift/release side since #3876 merged |
/retest |
CI fails because of this now :-/ |
I'll try to use registry.ci.openshift.org/openshift/release:rhel-8-release-golang-1.20-openshift-4.15 instead of registry.ci.openshift.org/openshift/release:rhel-9-release-golang-1.20-openshift-4.15 (RHEL8 based instead of RHEL9 based) and see if this helps. |
There is no version of registry.access.redhat.com/ubi8/go-toolset with golang 1.20: ``` $ podman build -f ./images/build-e2e/Dockerfile . [1/2] STEP 1/5: FROM registry.access.redhat.com/ubi8/go-toolset:1.20 AS builder Trying to pull registry.access.redhat.com/ubi8/go-toolset:1.20... Error: creating build container: initializing source docker://registry.access.redhat.com/ubi8/go-toolset:1.20: reading manifest 1.20 in registry.access.redhat.com/ubi8/go-toolset: manifest unknown ``` This commit switches to registry.ci.openshift.org/openshift/release:rhel-8-release-golang-1.20-openshift-4.15 which has golang 1.20 and is usable without authentication. This stays on a rhel8 image as some of the test nodes are still using rhel8, and building on a rhel9 node, and trying to run on a rhel8 node is not possible (some libc linking issues at startup). The builds will be noisy until openshift-eng/art-tools#115 is merged and gets into these images. If needed, we can set GO_COMPLIANCE_INFO=0 in the images environment to make the build more quiet.
This brings go 1.20/1.21 support, but drops go 1.19 support. After crc-org#3843 this should be fine. This fixes this build error with go 1.21: ``` package github.com/crc-org/crc/v2/cmd/crc imports github.com/crc-org/crc/v2/cmd/crc/cmd imports github.com/containers/gvisor-tap-vsock/pkg/virtualnetwork imports github.com/containers/gvisor-tap-vsock/pkg/services/dhcp imports github.com/containers/gvisor-tap-vsock/pkg/tap imports gvisor.dev/gvisor/pkg/tcpip/stack imports gvisor.dev/gvisor/pkg/sync/locking imports gvisor.dev/gvisor/pkg/gohacks: build constraints exclude all Go files in /Users/yevhen/work/redhat/crc/vendor/gvisor.dev/gvisor/pkg/gohacks make: *** [install] Error 1 ```
/retest |
1 similar comment
/retest |
@cfergeau: The following test failed, say
Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
This brings go 1.20/1.21 support, but drops go 1.19 support.
After #3843 this should be fine.
This fixes this build error with go 1.21:
Fixes: Issue #N
Relates to: Issue #N, PR #N, ...
Solution/Idea
Describe in plain English what you solved and how. For instance, Added
start
command to CRC so the user can create a VM and set-up a single-node OpenShift cluster on it with one command. It requires blablabla...Proposed changes
List main as well as consequential changes you introduced or had to introduce.
start
command.setup
as prerequisite tostart
.Testing
What is the bottom-line functionality that needs testing? Describe in pseudo-code or in English. Use verifiable statements that tie your changes to existing functionality.
start
succeeds first time aftersetup
succeededstart
succeededstart
failedstatus
returns ... ifstart
succeededstatus
returns ... ifstart
failedstart
fails afterstart
succeeded or afterstatus
says CRC isRunning