Rebase release-4.22 to Kubernetes v1.35.8 - #2756
Conversation
Move isLearner and isStarted variables to the outer var block of MemberPromote so their values are accessible after the poll loop. After the poll, if isLearner is false the member was already promoted, so return nil early without issuing a redundant promote call.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
When manageJob() needs to create replacement pods but defers creation
because a pod-failure backoff is still active, it returned a hardcoded
active=0 to the caller. Because no pods were actually created or deleted,
this left Status.Active=0 while Status.Ready still reflected the running
pods. The apiserver correctly rejects such updates ("cannot set more
ready pods than active") with a 422, which blocks flushing uncounted
terminated pods, removing finalizers, and updating job status, leaving
pods stuck Terminating with stale status.
Return the real active count from both backoff early-returns instead,
since the deferral does not change the number of active pods.
Issue: kubernetes#139428
(cherry picked from commit 2fe49b0)
…c996af Pins google.golang.org/protobuf to HEAD commit f2248ac996afc39b3df0777cdcc269f6ade50b07 (v1.36.12-0.20260120151049-f2248ac996af) which includes fixes for dead code elimination issues surfaced by Go 1.26's reflect changes. Xref: golang/protobuf#1704 Xref: kubernetes#137445 Signed-off-by: Davanum Srinivas <davanum@gmail.com>
During kubeadm join, the mandatory kubeadm-config ConfigMap fetch uses GetConfigMapWithShortRetry, which has a 350ms polling budget. When the API server is slow to respond, the single GET attempt blocks for up to 10 seconds (the client timeout), exhausting the polling budget with no retry. Since this call site has no fallback, the join fails. Add a shortConfigMapGet parameter to getInitConfigurationFromCluster and FetchInitConfigurationFromCluster. When false, the kubeadm-config ConfigMap is fetched using KubernetesAPICallTimeout (default 1 minute, user-configurable) with retries, matching the pattern used by getAPIEndpointFromPodAnnotation. When true, the existing GetConfigMapWithShortRetry is used for callers like kubeadm reset that don't need a long retry. Signed-off-by: Damiano Donati <damiano.donati@gmail.com>
…-of-139667-release-1.35 Automated cherry pick of kubernetes#139667: fix(kubeadm): use KubernetesAPICallTimeout for mandatory kubeadm-config fetch during join
…-of-#137451-upstream-release-1.35 Automated cherry pick of kubernetes#137451: Update google.golang.org/protobuf to v1.36.12-0.20260120151049-f2248ac996af to prevent file size explosion in go 1.26
…ck-of-#139964-upstream-release-1.35 [1.35] Automated cherry pick of kubernetes#139964: Restore string JSON encoding of cri-api KeyValue
Fix Go 1.26 vet errors
…erry-pick-of-#139457-upstream-release-1.35 Fix job controller reporting active=0 during pod creation backoff [1.35]
…-pick-of-#139842-upstream-release-1.35 Automated cherry pick of kubernetes#139842: kubeadm: treat already promoted learner as successful
…ck-of-#138390-origin-release-1.35 Automated cherry pick of kubernetes#138390: kubeadm: skip promote call when etcd member is already a voting member
…-pick-of-#138584-upstream-release-1.35 Automated cherry pick of kubernetes#138584: [chore] test/compatibility_lifecycle: resolve feature names from variables
Update ObjectVal.ConvertToNative in dynamic/objects.go to use a switch statement and explicitly support conversion to *structpb.Struct and *structpb.Value. Prune newly added unit and integration tests in json_patch_test.go and mutatingadmissionpolicy_test.go to remove failing and extraneous test cases, keeping only the tests proving ObjectVal conversion inside JSON Patch operations.
…bles Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
…-pick-of-#140163-upstream-release-1.35 Automated cherry pick of kubernetes#140163: kubelet: stop logging missing optional container annotations
[release-1.35] Bump images and versions to golang 1.25.12 and update distroless-iptables
Update to golang.org/x/text@v0.39.0+ for https://pkg.go.dev/vuln/GO-2026-5970 Update to golang.org/x/net@v0.55.0+ for https://pkg.go.dev/vuln/GO-2026-5026
[release-1.35] Bump to go 1.26.5
…-pick-of-#139162-release-1.35 Automated cherry pick of kubernetes#139162: Fix case where preemptor may be stuck in unschedulable queue
Update golang.org/x deps
…pick-of-#140419-origin-release-1.35 Automated cherry pick of kubernetes#140419: Fix ConvertToNative for Mutating admission policies
UPSTREAM: <drop>: manually resolve conflicts
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository: openshift/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Pipeline controller notification For optional jobs, comment This repository is configured in: LGTM mode |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: redhat-chai-bot The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
given that the .go-version has changed to 1.26 - the builder image should also be a 1.26 image
There was a problem hiding this comment.
Good catch — updated the builder image from rhel-9-golang-1.25-openshift-4.22 to rhel-9-golang-1.26-openshift-4.22 to match the .go-version (1.26.5). Fixed in 29af28a.
AI-generated. Review for accuracy.
|
@redhat-chai-bot: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions 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-sigs/prow repository. I understand the commands that are listed here. |
Summary
Rebase
openshift/kubernetes:release-4.22from Kubernetes v1.35.6 to v1.35.8.Upstream release: https://github.com/kubernetes/kubernetes/releases/tag/v1.35.8
Rebase details
v1.35.8was merged into therelease-4.22branchhack/update-vendor.shandmake updateConflicts resolved
83 files total:
go.mod(root + 34 staging) — all upstream versions newer, took upstream for all depsgo.sum(36 files) — accepted upstream (regenerated)go.work.sum— accepted upstreamgolang.org/x/crypto/ssh/,x/net/html/,x/net/http2/,x/tools/) — accepted upstreamvendor/modules.txt— accepted upstreamHow to verify
Confirm
v1.35.8tag merge is present and vendor is consistent.AI-generated. Review for accuracy.
@jubittajohn requested in Slack thread