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

Update to use golang 1.12 #74632

Merged
merged 1 commit into from Mar 1, 2019

Conversation

@cblecker
Copy link
Member

cblecker commented Feb 27, 2019

What type of PR is this?

Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line:

/kind api-change
/kind bug
/kind cleanup
/kind design
/kind documentation
/kind failing-test
/kind feature
/kind flake

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

Does this PR introduce a user-facing change?:

Update to use golang 1.12
@cblecker

This comment has been minimized.

Copy link
Member Author

cblecker commented Feb 27, 2019

/sig release
/priority important-soon
/assign @ixdy
/cc @BenTheElder @spiffxp
/hold

@cblecker

This comment has been minimized.

Copy link
Member Author

cblecker commented Feb 27, 2019

@cblecker cblecker force-pushed the cblecker:go-1.12 branch from 1b47760 to 4903e1e Feb 27, 2019

@cblecker

This comment has been minimized.

Copy link
Member Author

cblecker commented Feb 27, 2019

/test pull-kubernetes-integration

@javier-b-perez

This comment has been minimized.

Copy link
Contributor

javier-b-perez commented Feb 27, 2019

Created kube-cross
k8s.gcr.io/kube-cross:v1.12.0-1

@javier-b-perez

This comment has been minimized.

Copy link
Contributor

javier-b-perez commented Feb 27, 2019

/retest

@ixdy

This comment has been minimized.

Copy link
Member

ixdy commented Feb 27, 2019

/lgtm
/hold

@k8s-ci-robot k8s-ci-robot added the lgtm label Feb 27, 2019

@cblecker

This comment has been minimized.

Copy link
Member Author

cblecker commented Feb 28, 2019

/test pull-kubernetes-bazel-test

@BenTheElder

This comment has been minimized.

Copy link
Member

BenTheElder commented Mar 1, 2019

/hold cancel

@liggitt

This comment has been minimized.

Copy link
Member

liggitt commented Mar 1, 2019

from #74412 (comment):

it looks like since we vendor golang.org/x/net/http2, we actually have to bump our vendored copy to the go1.12 level to pick up the fix. I was able to write a simple integration test against the cached secret manager. On master, it consistently failed after establishing 236 watches. With our vendored http2 copy bumped to go1.12 levels, it worked all the way up to 10,000 distinct watches (which is where I stopped checking)

@cblecker

This comment has been minimized.

Copy link
Member Author

cblecker commented Mar 1, 2019

@liggitt yup, I can easily do that once this merges.

@BenTheElder

This comment has been minimized.

Copy link
Member

BenTheElder commented Mar 1, 2019

/retest

1 similar comment
@BenTheElder

This comment has been minimized.

Copy link
Member

BenTheElder commented Mar 1, 2019

/retest

@BenTheElder

This comment has been minimized.

Copy link
Member

BenTheElder commented Mar 1, 2019

NOTE: those appear to be normal flakes, not related to this PR, but the go vet failure is legitimate:

# k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm
cmd/kubeadm/app/apis/kubeadm/types.go:41:2: struct field Kind repeats json tag "kind" also at types.go:48
cmd/kubeadm/app/apis/kubeadm/types.go:41:2: struct field APIVersion repeats json tag "apiVersion" also at types.go:55
# k8s.io/kubernetes/pkg/controller/testutil
pkg/controller/testutil/test_utils.go:377:2: missing ... in args forwarded to printf-like function
# k8s.io/kubernetes/pkg/kubelet/container
pkg/kubelet/container/sync_result_test.go:48:3: Errorf format %q has arg result of wrong type k8s.io/kubernetes/pkg/kubelet/container.PodSyncResult
pkg/kubelet/container/sync_result_test.go:56:3: Errorf format %q has arg result of wrong type k8s.io/kubernetes/pkg/kubelet/container.PodSyncResult
pkg/kubelet/container/sync_result_test.go:66:3: Errorf format %q has arg result of wrong type k8s.io/kubernetes/pkg/kubelet/container.PodSyncResult
# k8s.io/kubernetes/pkg/kubelet/kuberuntime
pkg/kubelet/kuberuntime/kuberuntime_manager_test.go:387:3: Errorf format %q has arg expected of wrong type []*k8s.io/kubernetes/pkg/kubelet/container.Pod
# k8s.io/kubernetes/pkg/registry/core/service/allocator
pkg/registry/core/service/allocator/utils_test.go:49:4: Errorf format %d has arg test.n of wrong type *math/big.Int
make[1]: *** [vet] Error 1
@cblecker

This comment has been minimized.

Copy link
Member Author

cblecker commented Mar 1, 2019

Ugh. Okay maybe not on the updating golang.org/x/net:
#71501 (comment)

Godeps is the worst.

@neolit123

This comment has been minimized.

Copy link
Member

neolit123 commented Mar 1, 2019

k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm
cmd/kubeadm/app/apis/kubeadm/types.go:41:2: struct field Kind repeats json tag "kind" also at types.go:48
cmd/kubeadm/app/apis/kubeadm/types.go:41:2: struct field APIVersion repeats json tag "apiVersion" also at types.go:55

just saw that in another PR after test-infra updated.
this is "a bit" of a blocker.
cc @fabriziopandini @timothysc @rosti

and of course govet is right about the kubeadm embedding of a GVKed config in another GVKed "situation". i've mentioned this is a bad idea, at least once.

the rest of the errors seem easier to manage.

@BenTheElder BenTheElder referenced this pull request Mar 1, 2019

Merged

Revert go1.12 #11575

@BenTheElder

This comment has been minimized.

Copy link
Member

BenTheElder commented Mar 1, 2019

[rolled back test-infra changes due to the go vet failures https://github.com/kubernetes/test-infra/pull/11575]

@fejta-bot

This comment has been minimized.

Copy link

fejta-bot commented Mar 1, 2019

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to fejta).

Review the full test history for this PR.

Silence the bot with an /lgtm cancel or /hold comment for consistent failures.

@k8s-ci-robot k8s-ci-robot merged commit 36e934d into kubernetes:master Mar 1, 2019

16 checks passed

cla/linuxfoundation cblecker authorized
Details
pull-kubernetes-bazel-build Job succeeded.
Details
pull-kubernetes-bazel-test Job succeeded.
Details
pull-kubernetes-cross Job succeeded.
Details
pull-kubernetes-e2e-gce Job succeeded.
Details
pull-kubernetes-e2e-gce-100-performance Job succeeded.
Details
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-godeps Job succeeded.
Details
pull-kubernetes-integration Job succeeded.
Details
pull-kubernetes-kubemark-e2e-gce-big Job succeeded.
Details
pull-kubernetes-local-e2e Skipped.
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-typecheck Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
pull-publishing-bot-validate Skipped.
tide In merge pool.
Details
@spiffxp

This comment has been minimized.

Copy link
Member

spiffxp commented Mar 1, 2019

Based on the PR trail I'm a bit confused, are we using golang 1.12 here but not in test-infra?

On the go vet failures, how could we verify we've addressed them via presubmits/PRs instead of merging things?

@neolit123

This comment has been minimized.

Copy link
Member

neolit123 commented Mar 1, 2019

@spiffxp
the k/k govet failure fixes are WIP.
we need to update test infra again to 1.12 and test them and to make sure the verify job passes on k/k.

@spiffxp

This comment has been minimized.

Copy link
Member

spiffxp commented Mar 5, 2019

Status update:

So at this point I'm not seeing a "no, revert, go1.12 broke things" but neither am I seeing a "yes, things look green since we've moved to go1.12". At the moment I'm inclined to wait and see.

WDYT @wojtek-t @shyamjvs ?

@shyamjvs

This comment has been minimized.

Copy link
Member

shyamjvs commented Mar 5, 2019

Yeah, seems like there were green runs after this pr merged and they look fine at a high-level. There are recent red runs (quite likely unrelated). Also, it's better to wait for a green correctness run before deciding.

@mm4tt

This comment has been minimized.

Copy link
Contributor

mm4tt commented Mar 5, 2019

@mm4tt

This comment has been minimized.

Copy link
Contributor

mm4tt commented Mar 8, 2019

The gce-master-scale-correctness failure is tracked in #75095

@spiffxp

This comment has been minimized.

Copy link
Member

spiffxp commented Mar 11, 2019

https://prow.k8s.io/view/gcs/kubernetes-jenkins/logs/ci-kubernetes-e2e-gce-scale-correctness/219 - most recent run was green

I feel like this gives me sufficient confidence we're going to proceed with golang 1.12. Any objections @shyamjvs @wojtek-t?

@wojtek-t

This comment has been minimized.

Copy link
Member

wojtek-t commented Mar 11, 2019

gce-scale-correctness isn't enough signal in my opinion - we should wait for gce-scale-performance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.