Skip to content
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

WIP: update release-1.23 to go1.18 #113416

Closed
wants to merge 10 commits into from

Conversation

liggitt
Copy link
Member

@liggitt liggitt commented Oct 27, 2022

What type of PR is this?

/kind cleanup

What this PR does / why we need it:

Picks commits needed to update release-1.23 to go1.18.

go1.17 went out of support in Aug 2022. go1.18 is supported through ~Feb 2023.

Historically, we haven't been able to reliably update release branches to new go versions. However, the go1.17 → go1.18 transition only had two changes we needed to adapt to (GC tuning changes and removal of sha1 support by default), both of which we can adjust in-process to avoid changing release-1.23 behavior (once we get a go version containing https://go-review.googlesource.com/c/go/+/445656)

This PR includes commits from:

The only commit new to this PR is the Match go1.17 defaults for SHA-1 and GC one

Before this could merge:

Which issue(s) this PR fixes:

xref #112408

Special notes for your reviewer:

Does this PR introduce a user-facing change?

Kubernetes 1.23 is now built with go1.18.x

/hold

@k8s-ci-robot k8s-ci-robot added this to the v1.23 milestone Oct 27, 2022
@k8s-ci-robot k8s-ci-robot added do-not-merge/cherry-pick-not-approved Indicates that a PR is not yet approved to merge into a release branch. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. labels Oct 27, 2022
@k8s-ci-robot
Copy link
Contributor

@liggitt: This cherry pick PR is for a release branch and has not yet been approved by Release Managers.
Adding the do-not-merge/cherry-pick-not-approved label.

To merge this cherry pick, it must first be approved (/lgtm + /approve) by the relevant OWNERS.

AFTER it has been approved by code owners, please leave the following comment on a line by itself, with no leading whitespace: /cc kubernetes/release-managers

(This command will request a cherry pick review from Release Managers and should work for all GitHub users, whether they are members of the Kubernetes GitHub organization or not.)

For details on the patch release process and schedule, see the Patch Releases page.

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.

@k8s-ci-robot k8s-ci-robot added do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/needs-kind Indicates a PR lacks a `kind/foo` label and requires one. do-not-merge/needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Oct 27, 2022
@k8s-ci-robot
Copy link
Contributor

@liggitt: This issue is currently awaiting triage.

If a SIG or subproject determines this is a relevant issue, they will accept it by applying the triage/accepted label and provide further guidance.

The triage/accepted label can be added by org members by writing /triage accepted in a comment.

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.

@k8s-ci-robot k8s-ci-robot added needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. labels Oct 27, 2022
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: liggitt

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added area/cloudprovider approved Indicates a PR has been approved by an approver from all required OWNERS files. area/code-generation area/dependency Issues or PRs related to dependency changes area/kubectl area/kubelet area/provider/gcp Issues or PRs related to gcp provider labels Oct 27, 2022
@k8s-ci-robot k8s-ci-robot added area/release-eng Issues or PRs related to the Release Engineering subproject area/test sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/cli Categorizes an issue or PR as relevant to SIG CLI. labels Oct 27, 2022
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Dec 7, 2022
@fedebongio
Copy link
Contributor

/remove-sig api-machinery

@k8s-ci-robot k8s-ci-robot removed the sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. label Dec 8, 2022
@dims
Copy link
Member

dims commented Dec 12, 2022

This PR has the label work-in-progress, please revisit to see if you still need this, please close if not

@k8s-ci-robot k8s-ci-robot added the sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. label Dec 12, 2022
@alexzielenski
Copy link
Contributor

/remove-sig api-machinery

@k8s-ci-robot k8s-ci-robot removed the sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. label Dec 13, 2022
@k8s-ci-robot k8s-ci-robot added the sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. label Dec 16, 2022
liggitt and others added 9 commits December 16, 2022 10:32
	golang.org/x/crypto v0.0.0-20220214200702-86341886e292
        golang.org/x/net v0.3.1-0.20221206200815-1e63c2f08a10
        golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8
        golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4
        golang.org/x/sys v0.3.0
        golang.org/x/term v0.3.0
        golang.org/x/time v0.0.0-20220210224613-90d013bbcef8
        golang.org/x/tools v0.1.12

Mimic commit e6e7a42 with current release-1.24 versions
This should fix Go 1.18 compatibility woes.

Cherry-pick of e3ed3ba with conflict resolved

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
This fixes the following error:

> test/integration/apimachinery/watch_restart_test.go:232:5: call to (*T).Fatalf from a non-test goroutine

Update: the previous fix (commit 1ce55e3 that uses panic)
looks way too severe; it seems it is enough to call t.Errorf and return
from goroutine. The test will time out and fail anyway.

Combination of 1ce55e3 and 8820f4d

Co-authored-by: Kir Kolyshkin <kolyshkin@gmail.com>
Co-authored-by: Davanum Srinivas <davanum@gmail.com>
Generated by ./hack/update-mocks.sh using go 1.18

Mimic of commit 4513de0
This should fix the following error when running
./hack/update-generated-stable-metrics.sh:

	'go get' is no longer supported outside a module.
	To build and install a command, use 'go install' with a version,
	like 'go install example.com/cmd@latest'
	For more information, see https://golang.org/doc/go-get-install-deprecation
	or run 'go help get' or 'go help install'.

Using `go get` to download gopkg.in/yaml.v2 package into
KUBE_EXTRA_GOPATH directory no longer works. Interestingly, main repo
already has gopkg.in/yaml.v2@v2.4.0, same version that was installed by
that go get.

I guess that GOPATH with multiple elements no longer works either,
and since this code was the only user of KUBE_EXTRA_GOPATH, let's remove
it as well.

Combination of 3470453 and d8fdb00

Co-authored-by: Kir Kolyshkin <kolyshkin@gmail.com>
Co-authored-by: Davanum Srinivas <davanum@gmail.com>
@k8s-ci-robot
Copy link
Contributor

k8s-ci-robot commented Dec 16, 2022

@liggitt: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-kubernetes-dependencies 4c3c852 link true /test pull-kubernetes-dependencies
pull-kubernetes-e2e-kind-ipv6 4c3c852 link true /test pull-kubernetes-e2e-kind-ipv6
pull-kubernetes-conformance-kind-ipv6-parallel 4c3c852 link false /test pull-kubernetes-conformance-kind-ipv6-parallel
pull-kubernetes-verify 4c3c852 link true /test pull-kubernetes-verify

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

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.

@cici37
Copy link
Contributor

cici37 commented Dec 20, 2022

/remove-sig api-machinery

@k8s-ci-robot k8s-ci-robot removed the sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. label Dec 20, 2022
@liggitt
Copy link
Member Author

liggitt commented Dec 21, 2022

/close

in favor of #113983

@k8s-ci-robot
Copy link
Contributor

@liggitt: Closed this PR.

In response to this:

/close

in favor of #113983

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.

SIG Node CI/Test Board automation moved this from Archive-it to Done Dec 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/apiserver area/cloudprovider area/code-generation area/dependency Issues or PRs related to dependency changes area/kubectl area/kubelet area/provider/gcp Issues or PRs related to gcp provider area/release-eng Issues or PRs related to the Release Engineering subproject area/test cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/cherry-pick-not-approved Indicates that a PR is not yet approved to merge into a release branch. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. do-not-merge/needs-kind Indicates a PR lacks a `kind/foo` label and requires one. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/cli Categorizes an issue or PR as relevant to SIG CLI. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/instrumentation Categorizes an issue or PR as relevant to SIG Instrumentation. sig/network Categorizes an issue or PR as relevant to SIG Network. sig/node Categorizes an issue or PR as relevant to SIG Node. sig/release Categorizes an issue or PR as relevant to SIG Release. sig/storage Categorizes an issue or PR as relevant to SIG Storage. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
Archived in project
Archived in project
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet