The Wire · Showcase
CI Flake Hunters Strike Gold in GCP Test Harness
By RepoJournal · Filed · About Kubernetes
Kubernetes CI's most flaky test just got a surgical fix, and it's the kind of cleanup that keeps your pipelines honest.
The GCP cloud provider finally ditched a hardcoded 500ms sleep in TestDaemon_Run for socket polling, ending a flake that plagued heavy-loaded CI runners [1]. That's the same repo where protoc-gen-go and protoc-gen-go-grpc are now pinned to v1.36.12 and v1.6.2, killing the @latest roulette that broke verify-up-to-date jobs across branches [2]. Over in test-infra, kops GCE presubmits now discover the SSH user and use ephemeral keys, matching the periodics that have run 'without incident' for a day [3][4]. Meanwhile, Kueue removed its upgrade CI jobs entirely [5][6], and the website desk brought Chinese API group docs and Korean services networking pages up to date [7][8]. On the dependency front, cloud-provider-vsphere bumped golang.org/x/net to 0.58.0 [9] and testify to 1.12.0 [10], while prometheus/client_golang 1.24.1 fixes a panic on nil URL requests [11].
One email a day. Unsubscribe in one click.
Keep up with Kubernetes in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review cloud-provider-gcp's TestDaemon_Run fix and consider backporting if you run flaky e2e suites kubernetes/cloud-provider-gcp [monitor]
- → Verify your update-proto.sh doesn't rely on @latest; pin to protoc-gen-go v1.36.12 and v1.6.2 kubernetes/cloud-provider-gcp [immediate]
- → Watch kops GCE presubmits for SSH user discovery changes; confirm your jobs still authenticate kubernetes/test-infra [monitor]
- → Stay current on cloud-provider-vsphere dependency bumps, especially the promhttp panic fix kubernetes/cloud-provider-vsphere [plan]
References
- [1] fix(metis): replace hardcoded sleep with socket polling in TestDaemon_Run (#1298) ↗ kubernetes/cloud-provider-gcp
- [2] Pin protoc-gen-go and protoc-gen-go-grpc versions in update-proto.sh (#1304) kubernetes/cloud-provider-gcp
- [3] kops: discover the SSH user and use ephemeral keys on GCE presubmits kubernetes/test-infra
- [4] kops: use ephemeral SSH keys on the GCE periodics that discover their user kubernetes/test-infra
- [5] Merge pull request #37709 from mbobrovskyi/kueue/remove-upgrade-ci-jobs kubernetes/test-infra
- [6] Kueue: Remove upgrade ci jobs. kubernetes/test-infra
- [7] [zh-cn]Localize api-group-v1-meta ↗ kubernetes/website
- [8] [ko] Update Korean localization for services networking ↗ kubernetes/website
- [9] :seedling: (chore): Bump golang.org/x/net from 0.57.0 to 0.58.0 ↗ kubernetes/cloud-provider-vsphere
- [10] :seedling: (chore): Bump github.com/stretchr/testify from 1.11.1 to 1.12.0 ↗ kubernetes/cloud-provider-vsphere
- [11] :seedling: (chore): Bump github.com/prometheus/client_golang from 1.24.0 to 1.24.1 ↗ kubernetes/cloud-provider-vsphere