Skip to content

NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.14.0 - #862

Open
red-hat-konflux[bot] wants to merge 1 commit into
masterfrom
konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x
Open

NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.14.0#862
red-hat-konflux[bot] wants to merge 1 commit into
masterfrom
konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x

Conversation

@red-hat-konflux

@red-hat-konflux red-hat-konflux Bot commented Apr 8, 2026

Copy link
Copy Markdown

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
sigs.k8s.io/cluster-api v1.11.0v1.14.0 age confidence
sigs.k8s.io/cluster-api v1.11.2v1.14.0 age confidence

Release Notes

kubernetes-sigs/cluster-api (sigs.k8s.io/cluster-api)

v1.14.0

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.33.x -> v1.36.x
  • Workload Cluster: v1.31.x -> v1.36.x

More information about version support can be found here

Highlights

  • Cluster API is now using Golang 1.26, CR v0.24, CT v0.21

  • Improve the project security posture and increase its capability to deal with CVEs from direct/indirect dependencies

    • Introduced dedicated Golang module for API types (#​13762)
      • This new API module ensures consumers of the API types
        • Stronger compatibility guarantees.
        • Considerably smaller and tightly controlled dependency tree, thus reducing exposure to CVEs from dependencies.
    • Formalization of policies and rules for Golang version bump, allowing a better response to Golang CVEs.
    • See also the wider effort about code organization proposal + (#​13910).
  • Enable safe joining of nodes on older kubernetes versions with kubeadm (#​13433)

    • This feature removes a constraint preventing scale up, remediation and autoscaling of worker nodes during cluster rollouts,
      thus allowing future improvements like support for independent worker versions in cluster topology.
  • Improved observability on upgrades, Kubernetes version in-use and runtime extensions errors.

    • Surface upgrade plan in cluster status (#​13923)
    • Surface aggregated machine versions in status (#​13341)
    • Surface Runtime Extension errors in cluster conditions (#​13813)
  • More work to improve robustness and reliability of controllers

    • Improve forward etcd leadership in KCP, allowing the system to better handle partial failures during control plane machine deletion (#​13848)
    • Tolerate missing InfraTemplates during control plane machine deletion, allowing the system to tolerate accidental resource deletion (#​13558)
    • Allow KCP remediation of unhealthy machines during intermediate steps of chained upgrades (#​13869)
    • KCP is now able to cleanup not started etcd members after a machine is remediated (#​13685)
    • Implement stale controller mitigation in all the relevant controllers (#​13720, #​13737, #​13730)
    • Allow remediation of unhealthy Machines managed by old MachineSets during in-place updates (#​13886)
    • Perform draining and volume detachment once until completion (#​11590)
    • Use regular patch instead of SSA to patch Cluster in topology controller (#​13760)
  • More work for reducing Cluster API memory footprint and for improving performance at scale

    • Introduce options for cache tuning in ClusterCache clients, use those options to better control memory footprint in core CAPI, CABPK and KCP (#​13780, #​13820)
    • Implement managedFields interning (#​13807)
  • Misc:

    • Allow patching of metadata.{labels,annotations} through ClusterClass patches (#​13924)
    • Kubernetes version validation now enforces strict semver compatibility (#​13874)
    • Several changes to reduce E2E test durations while we keep adding new tests and improving test coverage of the existing ones.
    • Add experimental clusterctl convert command (#​12843)

Deprecation Warning

Important:

  • The v1beta1 API version in core Cluster API, CABPK and KCP is on track to be unserved in CAPI v1.16. All the consumers of this API version should migrate to v1beta2 ASAP.
    • Utils for the Cluster API v1beta1 condition types (condition helpers, patch helper etc.) will be removed as a next step.
    • All the status.deprecated fields existing in v1beta2 types (used for v1beta1 down conversions) types will be removed as a next step.
  • Support for the Cluster API v1beta1 contract versions is on track to be dropped in CAPI v1.16. Provider should start implementing the v1beta2 contract ASAP.

Removal of Docker* API resources will happen in CAPI v1.15. All the consumers of these API resources should migrate to Dev* API resources ASAP.

  • NOTE: CAPD is considered a test provider, API deprecation period does not apply

For additional details for providers, please take a look at Cluster API v1.13 compared to v1.14.

Changes since v1.13.0

📈 Overview

  • 258 new commits merged
  • 4 breaking changes ⚠️
  • 28 feature additions ✨
  • 28 bugs fixed 🐛

⚠️ Breaking Changes

  • CAPD: Mark docker resources as deprecated (#​13557)
  • Dependency: Bump to controller-runtime v0.24 & controller-tools v0.21 (#​13651)
  • Machine/MachinePool/MachineSet/MachineDeployment/Cluster: Fix version validation in webhooks (#​13874)
  • Misc: Fix minor goroutine leak in util/cache after controller shutdown (#​13487)

✨ New Features

  • API: Introduce separate API module (#​13762)
  • API: Move OpenAPI schema out of the api package to avoid direct dependency on kube-openapi in the api module (#​13825)
  • API: Surface aggregated machine versions in status (#​13341)
  • Bootstrap: Write kubeadm control plane version file for workers to use to fetch the matching kubeadm binary (#​13433)
  • CAPD: Introduce per-reconciler concurrency flags in CAPDev (#​13740)
  • CAPD: Migrate ClusterClass changes e2e test from the docker to the in-memory backend (#​13764)
  • CAPD: Migrate templates to use Dev* instead of Docker* (#​13741)
  • CI: Remove YEAR from copyright header boilerplate (#​13889)
  • Cluster: Use regular patch instead of SSA to patch Cluster in topology controller (#​13760)
  • ClusterCache: Expose and use DefaultTransform on CacheOptions (#​13780)
  • ClusterCache: Use DefaultTransform in core CAPI, CABPK and KCP (#​13820)
  • ClusterClass/KCP/MachineSet: Implement stale controller mitigation in KCP / MS / Cluster topology controller (#​13737)
  • ClusterClass: Allow patching of metadata.{labels,annotations} through ClusterClass patches (#​13924)
  • clusterctl: Add cluster-api-provider-kubeswift to the built-in infrastructure provider list (#​13946)
  • clusterctl: Add configuration ExternallyProvisioned for clusterctl (#​13739)
  • clusterctl: Add experimental clusterctl convert command (#​12843)
  • Dependency: Bump Go 1.26 (#​13623)
  • e2e: Migrate ClusterClass rollout e2e test from the docker to the in-memory backend (#​13806)
  • e2e: Migrate ClusterClass upgrade with different NS e2e test from the docker to the in-memory backend (#​13885)
  • e2e: Migrate e2e tests from using Docker* resources to Dev* resources (#​13647)
  • e2e: Migrate test extension to use Dev* instead of Docker* (#​13716)
  • e2e: Update in-place updating a workload cluster e2e test to use in-memory backend (#​13895)
  • e2e: Use in-memory template for clusterctl upgrade tests (#​13866)
  • KCP: Improve forward etcd leadership (#​13848)
  • MachineDeployment/util: Stale controller mitigation in reconcile wrapper & MD controller, enable store & fifo informer metrics (#​13720)
  • Misc: Implement managedFields interning (#​13807)
  • Misc: Implement new code structure (#​13894)
  • Release: Prepare main branch for v1.14 development (#​13617)

🐛 Bug Fixes

  • CAPD: Fix a panic in CAPDev cache.Get() (#​13959)
  • CAPD: Fix CAPD flakes (#​13757)
  • CAPD: Fix E2E host port binding lookup (#​13627)
  • CAPIM: Fix deadlock in in-memory server (#​13971)
  • CI: Fix verify docker images arch (#​13922)
  • ClusterClass: Fix Machine taint propagation in the Cluster topology controller for the v1beta1 contract (#​13991)
  • clusterctl: Detect cert-manager image changes during upgrade (#​13850)
  • clusterctl: Fix v1beta1 describe output stream (#​13893)
  • clusterctl: Raise management cluster client QPS and Burst (#​13875)
  • clusterctl: Reject incomplete GitHub release asset URLs (#​13909)
  • clusterctl: Skip update check for clusterctl completion (#​13653)
  • clusterctl: Trim whitespace in --show-conditions filters (#​13897)
  • Dependency: Fix CVE-2026-39883 (#​13571)
  • Devtools: Fix Grafana deployment (#​13998)
  • Devtools: Fix parallel build of binaries in Tiltfile (#​13995)
  • Devtools: Fix Tilt kube-state-metrics deployment (#​13677)
  • e2e: Fix ClusterClass rollout test with k8s latest (#​13881)
  • e2e: Fix PrettyPrint in WaitForControlPlaneToBeReady (#​13843)
  • e2e: Fix self-hosted test (#​13778)
  • KCP: Fix failing TestKubeadmControlPlaneReconciler_reconcileEtcdMembers (#​13717)
  • KCP: Fix KCP in-place update with InfraMachine webhooks with immutability validation (#​13640)
  • KCP: KCP deletion should tolerate missing InfraTemplates (#​13558)
  • Machine/Bootstrap: Perform draining and volume detachment once until completion (#​11590)
  • MachineDeployment: Fix nil pointer panic when paused with no matching MachineSet (#​13827)
  • MachineSet: Delete unhealthy Machines of old MS during in-place updates (#​13886)
  • MachineSet: Fix retry to remove finalizer in MS topology reconciler (#​13993)
  • Release: Revert unset GOCACHE env var (#​13732)
  • Testing: Fix TestHealthCheckTargets flake (#​13860)

🌱 Others

  • API/Runtime SDK/IPAM/MachinePool/MachineSet/MachineDeployment: Fix typos in generated CRD descriptions (#​13641)
  • API: Adjust IsMachineDeploymentUpgrading to detect in-place upgrades (#​13876)
  • API: Follow-ups for Surface aggregated machine versions in status (#​13871)
  • API: Surface upgrade plan in cluster status (#​13923)
  • Bootstrap: Limit size of files generated from templates (#​13927)
  • CABPK: Prevent CABPK to override controlling ownerRef for bootstrap secrets (#​13937)
  • CABPK: Use ClusterClass with RuntimeSDK in kubeadm join old Node e2e test & fix e2e test failures (#​13759)
  • CAPD: Add support for controller restart to in-memory backend (#​13595)
  • CAPD: Only add finalizer after InfraMachine has owner in CAPDev (#​13714)
  • CAPD: Partially revert fix self-hosted test (#​13795)
  • CAPD: Refactor CAPDev reconciler (#​13702)
  • CI: Add cron buckets to prow generator (#​13656)
  • CI: Add KCP infra adoption test (#​13731)
  • CI: Add stable BuildKit cache mount IDs (#​13930)
  • CI: Cleanup ./scripts folder (#​13896)
  • CI: Cleanup golangci-lint excludes (#​13891)
  • CI: Drop jobs on release-1.11 (#​13593)
  • CI: Fix link in cloudbuild.yaml's (#​13793)
  • CI: Fix linter findings in hack/tools (#​13814)
  • CI: Harden git workflows (#​13442)
  • CI: Make it possible to exclude CVEs with govulncheck (#​13669)
  • CI: Migrate from import boss to depguard (#​13873)
  • CI: Read permissions for pr-verify action (#​13687)
  • CI: Replace deprecated gaurav-nelson/github-action-markdown-link-check with tcort fork (#​13572)
  • CI: Revert "Migrate away from custom GitHub action approval workflow" (#​13802)
  • CI: Stop running make lint-api multiple times in the GitHub action (#​13824)
  • ClusterCache/Misc: Block ExecProvider/AuthProvider in ClusterCache, deprecate remote funcs (#​13949)
  • ClusterCache: Cleanup ClusterCache metrics for deleted Clusters (#​13660)
  • ClusterClass: Increase MD/MS topology reconciler concurrency to 25 (#​14008)
  • clusterctl/Misc: Avoid building if LDFLAGS returns error checking for SemVer (#​13418)
  • clusterctl: Add cloudscale-ch-cloudscale provider (#​13544)
  • clusterctl: Add oxide as an infrastructure provider (#​13920)
  • clusterctl: Bump cert-manager to v1.20.3 (#​13847)
  • clusterctl: Bump cert-manager to v1.21.0 (#​13900)
  • clusterctl: Bump cert-manager to v1.21.1 (#​14012)
  • clusterctl: Bump Cert-manager v1.20.2 (#​13583)
  • clusterctl: Harden clusterctl move (#​13928)
  • clusterctl: Improve clusterctl describe (#​13753)
  • clusterctl: Print help on argument validation errors (#​13808)
  • Control-plane: Add additional test cases for EnsureKubeadmPermissions (#​13758)
  • Control-plane: Align scale validator to upstream (#​13925)
  • Control-plane: Remove unused functions in internal/contract (#​13826)
  • Control-plane: Verify etcd serving certificate against the etcd CA (#​13765)
  • Dependency: 1.26.3 (#​13661)
  • Dependency: Bump cel-go to v0.29.0 and grpc to v1.82.1 to address security advisories (#​13976)
  • Dependency: Bump envtest 1.36 (#​13657)
  • Dependency: Bump go to v1.26.4 (#​13788)
  • Dependency: Bump Go to v1.26.5 (#​13902)
  • Dependency: Bump golang/x/net to 0.55.0 (#​13744)
  • Devtools: Add Headlamp to Tilt dev environment (#​13538)
  • Devtools: Add log dashboard (#​13594)
  • Devtools: Add Log dashboard to grafana (#​13972)
  • Devtools: Bump headlamp CAPI plugin to 0.2.0-beta.0 (#​13783)
  • Devtools: Bump setup-envtest to v0.24.1 (#​13948)
  • Devtools: Enable prealloc linter & fix findings (#​13711)
  • Devtools: Fix gosec lint findings (#​13709)
  • Devtools: Improve metrics config (#​13974)
  • Devtools: Move scripts under hack/scripts (#​13877)
  • Devtools: Upgrade tempo & fix configuration (#​13727)
  • Devtools: Verify mdbook sha (#​13926)
  • e2e: Add options to runtimesdk e2e test (#​13750)
  • e2e: Bump autoscaler version used for testing (#​13919)
  • e2e: Bump Kubernetes version used for testing to v1.37.0-beta.0 (#​13912)
  • e2e: Bump to kind main to fix e2e tests (#​13767)
  • e2e: Bump to kind v0.32.0 (#​13781)
  • e2e: Cleanup of ControlPlaneKubeletLocalMode handling in KCP adoption test (#​13695)
  • e2e: Cleanup unused e2e test templates (#​13713)
  • e2e: Drop syncer from in-memory server (#​13992)
  • e2e: Enable opt-out of OwnerReferencesPermissionEnforcement admission controller & opt-out in clusterctl upgrade tests (#​13819)
  • e2e: Fix E2E chained upgrade (#​13618)
  • e2e: Give resource versions more time to become stable in e2e tests (#​13882)
  • e2e: Improve handling of missing kind versions (#​13642)
  • e2e: Increase clusterctl and e2e test dry-run cluster-template timeouts (#​14014)
  • e2e: Make it easier to debug cert issues in clusterctl upgrade & self-hosted tests (#​13966)
  • e2e: Rename in-memory e2e test flavor to in-memory-scale (#​13936)
  • e2e: Start testing against Kubernetes v1.37 (#​13614)
  • e2e: Start testing with K8s 1.36.0 (#​13611)
  • e2e: Start testing with Kubernetes v1.36.0-rc.0 (#​13564)
  • e2e: Start testing with Kubernetes v1.36.0-rc.1 (#​13585)
  • e2e: Use only 1 worker machine per MD/MP in RuntimeSDK e2e test (#​13872)
  • e2e: Use Runtime SDK for kcp-infra-adoption e2e test (#​13809)
  • KCP: Add kubeadm cluster role (#​13664)
  • KCP: Allow KCP remediation on chained upgrade intermediate steps (#​13869)
  • KCP: KCP cleanup etcd members not started after a machine is remediated (#​13685)
  • KCP: KCP enforce context deadline on connection stream (#​13939)
  • KCP: Remove the check on the errors returned by etcd's status response (#​13846)
  • KCP: Update RemoveEtcdMember to accept a *etcd.Member instead of a member name (#​13784)
  • Machine: Drop KCP specific logic in Machine reconcileDelete (#​13829)
  • Machine: Improve machine controller in-place update unit tests (#​13682)
  • MachineDeployment: Extend stale controller mitigation in MD controller to MS deletion (#​13730)
  • MachinePool: Unit testing to determine if provider allows individual machines to be deleted. (#​13832)
  • MachineSet: Cleanup orphaned BoostrapConfigs / InfraMachines in MS controller (#​13812)
  • MachineSet: Consider MS skip preflight check annotation from BootstrapConfigTemplate (#​13938)
  • Misc: Add finalizer only after we got owner/cluster (#​13747)
  • Misc: Correct typos in comments and error messages (#​13756)
  • Misc: Delete unused nolint directives (#​13710)
  • Misc: Fix static check lint errors (#​13708)
  • Misc: Improve conversion webhook aliasing (#​13828)
  • Misc: Replace reflect.Ptr with reflect.Pointer (#​13707)
  • Misc: Stop setting TypeMeta in typed objects (part II) (#​13890)
  • Misc: Update Kubernetes bump issue template (#​13693)
  • Misc: Use pkgerrors as alias for github.com/pkg/errors & no alias for errors (#​13963)
  • Release: Add Code Freeze date field to provider_issues.go to be used for beta communication (#​13915)
  • Release: Add workaround for generate release notes (#​13655)
  • Release: Optimize go build in make release-binary (#​13499)
  • Release: Report consistency errors in release note draft (#​13861)
  • Runtime SDK: Add 20 MB read limits for Runtime SDK client & server (#​13944)
  • Runtime SDK: Do not follow redirects when calling runtime extensions (#​13763)
  • Runtime SDK: Surface Runtime Extension errors in conditions (#​13813)
  • Security: Updated gitignore (#​13799)
  • Testing/Documentation/e2e: Improve support for OwnerReferencesPermissionEnforcement admission controller (#​13805)
  • Testing: Add a test case to confirm that kcp can safely remove a member when it doesn't have a corresponding machine but it has no alarm (#​13772)
  • Testing: Improve KCP remediation ack signal diagnostics and reset handling (#​13736)
  • Testing: Make the clusterctl upgrade management cluster control plane count configurable (#​13766)
  • Testing: Update version matrix for GitHub workflows for release 1.13 (#​13578)
  • util: Deprecate util/record (#​13981)
  • util: Refactor consistency store to allow defer without previous store registration (#​13751)
  • util: Remove deprecated code (#​13749)
  • util: Switch CRD migrator to use merge patch (#​13792)

📖 Additionally, there have been 32 contributions to our documentation and book. (#​13419, #​13559, #​13566, #​13568, #​13574, #​13589, #​13592, #​13603, #​13615, #​13620, #​13624, #​13637, #​13645, #​13683, #​13684, #​13696, #​13699, #​13704, #​13718, #​13777, #​13834, #​13859, #​13862, #​13887, #​13903, #​13918, #​13921, #​13947, #​13951, #​13955, #​13969, #​14007)

Dependencies

Added
  • github.com/clipperhouse/displaywidth: v0.10.0
  • github.com/clipperhouse/stringish: v0.1.1
  • github.com/clipperhouse/uax29/v2: v2.6.0
  • k8s.io/streaming: v0.36.3
Changed
  • github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.31.0 → v1.32.0
  • github.com/alecthomas/units: b94a6e3 → 0f3dac3
  • github.com/antlr4-go/antlr/v4: v4.13.0 → v4.13.1
  • github.com/cncf/xds/go: ee656c7 → dba9d58
  • github.com/coredns/corefile-migration: v1.0.31 → v1.0.34
  • github.com/coreos/go-oidc: v2.3.0+incompatible → v2.5.0+incompatible
  • github.com/coreos/go-systemd/v22: v22.5.0 → v22.7.0
  • github.com/envoyproxy/go-control-plane/envoy: v1.36.0 → v1.37.0
  • github.com/envoyproxy/protoc-gen-validate: v1.3.0 → v1.3.3
  • github.com/go-jose/go-jose/v4: v4.1.3 → v4.1.4
  • github.com/go-logr/logr: v1.4.3 → v1.4.4
  • github.com/godbus/dbus/v5: v5.0.4 → v5.1.0
  • github.com/golang-jwt/jwt/v5: v5.2.2 → v5.3.0
  • github.com/google/cel-go: v0.26.0 → v0.29.0
  • github.com/google/pprof: 294ebfa → 545e8a4
  • github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus: v1.0.1 → v1.1.0
  • github.com/grpc-ecosystem/go-grpc-middleware/v2: v2.3.0 → v2.3.3
  • github.com/mattn/go-runewidth: v0.0.16 → v0.0.19
  • github.com/moby/spdystream: v0.5.0 → v0.5.1
  • github.com/olekukonko/errors: v1.1.0 → v1.2.0
  • github.com/olekukonko/ll: v0.1.1 → v0.1.6
  • github.com/olekukonko/tablewriter: v1.0.9 → v1.1.4
  • github.com/onsi/ginkgo/v2: v2.28.1 → v2.32.0
  • github.com/onsi/gomega: v1.39.1 → v1.42.1
  • github.com/pmezard/go-difflib: v1.0.0 → 5d4384e
  • github.com/prometheus/common: v0.66.1 → v0.67.5
  • github.com/prometheus/procfs: v0.16.1 → v0.19.2
  • go.etcd.io/etcd/api/v3: v3.6.10 → v3.6.14
  • go.etcd.io/etcd/client/pkg/v3: v3.6.10 → v3.6.14
  • go.etcd.io/etcd/client/v3: v3.6.10 → v3.6.14
  • go.etcd.io/etcd/pkg/v3: v3.6.5 → v3.6.8
  • go.etcd.io/etcd/server/v3: v3.6.5 → v3.6.8
  • go.opentelemetry.io/contrib/detectors/gcp: v1.39.0 → v1.43.0
  • go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc: v0.60.0 → v0.65.0
  • go.uber.org/zap: v1.27.1 → v1.28.0
  • golang.org/x/crypto: v0.50.0 → v0.53.0
  • golang.org/x/exp: 8a7402a944ab1f
  • golang.org/x/mod: v0.34.0 → v0.37.0
  • golang.org/x/net: v0.53.0 → v0.56.0
  • golang.org/x/sync: v0.20.0 → v0.22.0
  • golang.org/x/sys: v0.43.0 → v0.46.0
  • golang.org/x/telemetry: 579e4da59b4966
  • golang.org/x/term: v0.42.0 → v0.44.0
  • golang.org/x/text: v0.36.0 → v0.40.0
  • golang.org/x/time: v0.9.0 → v0.14.0
  • golang.org/x/tools/go/expect: v0.1.0-deprecated → v0.1.1-deprecated
  • golang.org/x/tools: v0.43.0 → v0.47.0
  • google.golang.org/genproto/googleapis/api: 9d38bb4afd174a
  • google.golang.org/genproto/googleapis/rpc: 9d38bb4afd174a
  • google.golang.org/grpc: v1.80.0 → v1.82.1
  • google.golang.org/protobuf: v1.36.11 → f2248ac
  • k8s.io/api: v0.35.3 → v0.36.3
  • k8s.io/apiextensions-apiserver: v0.35.3 → v0.36.3
  • k8s.io/apimachinery: v0.35.3 → v0.36.3
  • k8s.io/apiserver: v0.35.3 → v0.36.3
  • k8s.io/client-go: v0.35.3 → v0.36.3
  • k8s.io/cluster-bootstrap: v0.35.3 → v0.36.3
  • k8s.io/code-generator: v0.35.3 → v0.36.3
  • k8s.io/component-base: v0.35.3 → v0.36.3
  • k8s.io/klog/v2: v2.130.1 → v2.140.0
  • k8s.io/kms: v0.35.3 → v0.36.3
  • k8s.io/kube-openapi: 589584f43fb72c
  • k8s.io/utils: bc988d5b8788ab
  • sigs.k8s.io/apiserver-network-proxy/konnectivity-client: v0.31.2 → v0.34.0
  • sigs.k8s.io/controller-runtime: v0.23.3 → v0.24.1
  • sigs.k8s.io/structured-merge-diff/v6: v6.3.2 → v6.4.2
Removed
  • github.com/cenkalti/backoff/v4: v4.3.0
  • github.com/gregjones/httpcache: 901d907
  • github.com/grpc-ecosystem/go-grpc-prometheus: v1.2.0
  • github.com/rivo/uniseg: v0.4.7

Thanks to all our contributors! 😊

v1.13.5

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.32.x -> v1.36.x
  • Workload Cluster: v1.30.x -> v1.36.x

More information about version support can be found here

Changes since v1.13.4

📈 Overview

  • 13 new commits merged
  • 2 bugs fixed 🐛

🐛 Bug Fixes

  • CAPD: Fix a panic in CAPDev cache.Get() (#​13961)
  • ClusterClass: Fix Machine taint propagation in the Cluster topology controller for the v1beta1 contract (#​13985)

🌱 Others

  • clusterctl: Add oxide as an infrastructure provider (#​13934)
  • clusterctl: Bump cert-manager to v1.21.0 (#​13917)
  • clusterctl: Bump cert-manager to v1.21.1 (#​14011)
  • clusterctl: Harden clusterctl move (#​13940)
  • Dependency: Bump golang.org/x/text to v0.39.0, cel-go to v0.29.0 and grpc to v1.82.1 to address security advisories (#​13977)
  • e2e: Bump autoscaler version used for testing (#​13942)
  • e2e: Bump Kubernetes version used for testing to v1.37.0-beta.0 (#​13950)
  • e2e: Increase clusterctl and e2e test dry-run cluster-template timeouts (#​14015)
  • KCP: Bump corefile-migration to v1.0.34 (#​13958)
  • KCP: KCP enforce context deadline on connection stream (#​14001)

📖 Additionally, there has been 1 contribution to our documentation and book. (#​13935)

Dependencies

Added

Nothing has changed.

Changed
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.13.4

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.32.x -> v1.36.x
  • Workload Cluster: v1.30.x -> v1.36.x

More information about version support can be found here

Changes since v1.13.3

📈 Overview

  • 7 new commits merged
  • 4 bugs fixed 🐛

🐛 Bug Fixes

  • clusterctl: Raise management cluster client QPS and Burst (#​13901)
  • e2e: Bump kind image in clusterctl v1.10 upgrade test to avoid containerd segv (#​13854)
  • e2e: Fix PrettyPrint in WaitForControlPlaneToBeReady (#​13844)
  • MachineSet: Delete unhealthy Machines on old MS during in-place updates (#​13888)

🌱 Others

  • clusterctl: Bump cert-manager to v1.20.3 (#​13851)
  • Dependency: Bump Go version to v1.25.12 (#​13906)
  • Dependency: Bump golang.org/x/crypto version to v0.53.0 (#​13864)

Dependencies

Added

Nothing has changed.

Changed
  • golang.org/x/crypto: v0.51.0 → v0.53.0
  • golang.org/x/mod: v0.35.0 → v0.36.0
  • golang.org/x/sync: v0.20.0 → v0.21.0
  • golang.org/x/sys: v0.45.0 → v0.46.0
  • golang.org/x/telemetry: be6f6cb42602be
  • golang.org/x/term: v0.43.0 → v0.44.0
  • golang.org/x/text: v0.37.0 → v0.38.0
  • golang.org/x/tools: v0.44.0 → v0.45.0
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.13.3

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.32.x -> v1.36.x
  • Workload Cluster: v1.30.x -> v1.36.x

More information about version support can be found here

Changes since v1.13.2

📈 Overview

  • 14 new commits merged
  • 1 feature addition ✨
  • 3 bugs fixed 🐛

✨ New Features

  • ClusterCache: Expose DefaultTransform on CacheOptions (#​13785)

🐛 Bug Fixes

  • clusterctl: Skip update check for clusterctl completion (#​13697)
  • KCP: Fix failing TestKubeadmControlPlaneReconciler_reconcileEtcdMembers (#​13728)
  • Security: Grant RBAC to support OwnerReferencesPermissionEnforcement admission controller (#​13817)

🌱 Others

  • CI: Bump gcb-docker-gcloud image (#​13794)
  • Dependency: Bump go to v1.25.11 (#​13789)
  • Dependency: Bump golang/x/net to 0.55.0 (#​13746)
  • e2e: Bump to kind main to fix e2e tests (#​13769)
  • e2e: Bump to kind v0.32.0 (#​13781)
  • e2e: Bump to kind v0.32.0 (#​13787)
  • e2e: Make the clusterctl upgrade management cluster control plane count configurable (#​13771)
  • KCP: Update RemoveEtcdMember to accept a *etcd.Member instead of a member name (#​13786)
  • Misc: Add finalizer only after we got owner/cluster (#​13748)

📖 Additionally, there has been 1 contribution to our documentation and book. (#​13719)

Dependencies

Added

Nothing has changed.

Changed
  • golang.org/x/crypto: v0.50.0 → v0.51.0
  • golang.org/x/mod: v0.34.0 → v0.35.0
  • golang.org/x/net: v0.53.0 → v0.55.0
  • golang.org/x/sys: v0.43.0 → v0.45.0
  • golang.org/x/telemetry: 579e4dabe6f6cb
  • golang.org/x/term: v0.42.0 → v0.43.0
  • golang.org/x/text: v0.36.0 → v0.37.0
  • golang.org/x/tools: v0.43.0 → v0.44.0
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.13.2

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.32.x -> v1.36.x
  • Workload Cluster: v1.30.x -> v1.36.x

More information about version support can be found here

Changes since v1.13.1

📈 Overview

  • 10 new commits merged
  • 2 bugs fixed 🐛

🐛 Bug Fixes

  • Devtools: Fix Tilt kube-state-metrics deployment (#​13678)
  • KCP: Fix KCP in-place update with InfraMachine webhooks with immutability validation (#​13643)

🌱 Others

  • CI: Make it possible to exclude CVEs with govulncheck (#​13671)
  • Dependency: Bump envtest 1.36 (#​13658)
  • Dependency: Bumping corefile-migration to v1.0.32 (#​13635)
  • Dependency: Go bump to 1.25.10 (#​13666)
  • e2e: Start testing K8s 1.37 (#​13638)
  • KCP: Add kubeadm cluster role (#​13670)
  • KCP: KCP cleanup etcd members not started after a machine is remediated (#​13688)

📖 Additionally, there has been 1 contribution to our documentation and book. (#​13621)

Dependencies

Added

Nothing has changed.

Changed
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.13.1

[Compare Source](http

Note

PR body was truncated to here.


Configuration

📅 Schedule: (in timezone America/New_York)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

To execute skipped test pipelines write comment /ok-to-test.


Documentation

Find out how to configure dependency updates in MintMaker documentation or see all available configuration options in Renovate documentation.

@red-hat-konflux

red-hat-konflux Bot commented Apr 8, 2026

Copy link
Copy Markdown
Author

ℹ️ Artifact update notice

File name: api/go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 9 additional dependencies were updated

Details:

Package Change
k8s.io/apimachinery v0.34.2 -> v0.35.4
k8s.io/client-go v0.34.2 -> v0.35.4
sigs.k8s.io/controller-runtime v0.22.4 -> v0.23.3
golang.org/x/net v0.47.0 -> v0.55.0
golang.org/x/text v0.31.0 -> v0.38.0
google.golang.org/protobuf v1.36.10 -> v1.36.11
k8s.io/api v0.34.2 -> v0.35.4
k8s.io/apiextensions-apiserver v0.34.2 -> v0.35.4
sigs.k8s.io/structured-merge-diff/v6 v6.3.1 -> v6.4.0
File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 11 additional dependencies were updated

Details:

Package Change
github.com/onsi/gomega v1.38.2 -> v1.39.1
k8s.io/client-go v0.35.1 -> v0.35.4
sigs.k8s.io/controller-runtime v0.22.4 -> v0.23.3
golang.org/x/net v0.54.0 -> v0.55.0
golang.org/x/oauth2 v0.34.0 -> v0.36.0
golang.org/x/sync v0.20.0 -> v0.21.0
golang.org/x/sys v0.44.0 -> v0.46.0
golang.org/x/term v0.43.0 -> v0.44.0
golang.org/x/text v0.37.0 -> v0.38.0
k8s.io/apiextensions-apiserver v0.35.1 -> v0.35.4
sigs.k8s.io/structured-merge-diff/v6 v6.3.1 -> v6.4.0

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Apr 8, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@red-hat-konflux[bot]: This pull request explicitly references no jira issue.

Details

In response to this:

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
sigs.k8s.io/cluster-api v1.11.0v1.12.5 age confidence

Release Notes

kubernetes-sigs/cluster-api (sigs.k8s.io/cluster-api)

v1.12.5

Compare Source

👌 Kubernetes version support
  • Management Cluster: v1.31.x -> v1.35.x
  • Workload Cluster: v1.29.x -> v1.35.x

More information about version support can be found here

Changes since v1.12.4
📈 Overview
  • 14 new commits merged
  • 1 feature addition ✨
  • 3 bugs fixed 🐛
✨ New Features
  • CAPD: Improve CAPD wait for multi-user target (#​13523)
🐛 Bug Fixes
  • Testing: Fix flaky by waiting for CRD finalizer processing (#​13478)
  • Testing: Fix flaky TestClusterReconciler unit test (#​13475)
  • Testing: Fix TestMachineSetReconciler_createMachines_preflightChecks flake (#​13477)
🌱 Others
  • CAPD: Reduce verbosity of CAPD exec log (#​13494)
  • clusterctl: Bump cert-manager to v1.20.0 (#​13484)
  • clusterctl: Bump cert-manager to v1.20.1 (#​13519)
  • Dependency: Bump corefile-migration to v1.0.31 (#​13526)
  • Dependency: Bump dependencies to fix CVE-2026-33186 (google.golang.org/grpc) (#​13504)
  • Dependency: Bump go v1.25.9 (#​13554)
  • Dependency: Switch from docker to moby dependencies (#​13550)
  • e2e: Start testing with Kubernetes v1.36.0-beta.0 (#​13525)
  • KCP: KCP surfaces learner etcd members (#​13491)

📖 Additionally, there has been 1 contribution to our documentation and book. (#​13528)

Dependencies
Added

Nothing has changed.

Changed
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.12.4

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.31.x -> v1.35.x
  • Workload Cluster: v1.29.x -> v1.35.x

More information about version support can be found here

Highlights

Starting from this release ReconcilerRateLimiting feature also requires PriorityQueue to be enabled.
This ensures that ReconcilerRateLimiting works consistently with controller runtime ExponentialBackoff.

Changes since v1.12.3

📈 Overview

  • 17 new commits merged
  • 9 bugs fixed 🐛

🐛 Bug Fixes

  • CAPD: Fix "Failed to exec DockerMachine bootstrap" errors in CAPD (#​13451)
  • CI: Bump trivy to v0.69.2 to fix CI (#​13388)
  • Cluster: Fix panic in Cluster conversion (#​13384)
  • ClusterClass/KCP/MachineSet/MachineDeployment: Implement mitigation for managedFields issue with SSA in apiserver (#​13355)
  • ClusterClass: Fix upgradePlan computation in GetUpgradePlanFromClusterClassVersions (#​13471)
  • Dependency: Bump dependencies to fix CVE GO-2026-4394 (go.opentelemetry.io/otel/sdk pkg) (#​13377)
  • e2e: Only retry creating objects that failed (#​13430)
  • Machine/MachineSet/MachineDeployment: Fix UpToDate calculation for rolloutAfter (#​13406)
  • util: Fix exponential backoff with ReconcilerRateLimiting (#​13427)

🌱 Others

  • API: Relax validation for Machine .status.addresses to maximum of 256 instead of 128 items (#​13399)
  • CAPD: Implement pause for DockerMachinePool (#​13448)
  • clusterctl: Bump cert-manager v1.19.4 (#​13381)
  • Dependency: Bump cloudflare/circl (#​13438)
  • Dependency: Bump go v1.25.8 (#​13432)
  • e2e: Add retry in test framework when getting manifest YAMLs (#​13358)
  • e2e: Bump autoscaler version used for testing to v1.35.0 (#​13375)
  • e2e: Improve condition if CAPD Machine is not yet ready for bootstrap exec (#​13468)

Dependencies

Added
  • github.com/cenkalti/backoff/v5: v5.0.3
  • gonum.org/v1/gonum: v0.16.0
Changed
  • cloud.google.com/go/compute/metadata: v0.6.0 → v0.9.0
  • github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.26.0 → v1.30.0
  • github.com/cloudflare/circl: v1.6.1 → v1.6.3
  • github.com/cncf/xds/go: 2f00578 → 0feb691
  • github.com/envoyproxy/go-control-plane/envoy: v1.32.4 → v1.35.0
  • github.com/envoyproxy/go-control-plane: v0.13.4 → 75eaa19
  • github.com/go-jose/go-jose/v4: v4.0.4 → v4.1.3
  • github.com/golang/glog: v1.2.4 → v1.2.5
  • github.com/grpc-ecosystem/grpc-gateway/v2: v2.26.3 → v2.27.7
  • github.com/spiffe/go-spiffe/v2: v2.5.0 → v2.6.0
  • go.opentelemetry.io/auto/sdk: v1.1.0 → v1.2.1
  • go.opentelemetry.io/contrib/detectors/gcp: v1.34.0 → v1.38.0
  • go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.58.0 → v0.65.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.34.0 → v1.40.0
  • go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.34.0 → v1.40.0
  • go.opentelemetry.io/otel/metric: v1.35.0 → v1.40.0
  • go.opentelemetry.io/otel/sdk/metric: v1.34.0 → v1.40.0
  • go.opentelemetry.io/otel/sdk: v1.34.0 → v1.40.0
  • go.opentelemetry.io/otel/trace: v1.35.0 → v1.40.0
  • go.opentelemetry.io/otel: v1.35.0 → v1.40.0
  • go.opentelemetry.io/proto/otlp: v1.5.0 → v1.9.0
  • golang.org/x/crypto: v0.45.0 → v0.47.0
  • golang.org/x/mod: v0.29.0 → v0.31.0
  • golang.org/x/net: v0.47.0 → v0.49.0
  • golang.org/x/oauth2: v0.33.0 → v0.34.0
  • golang.org/x/sync: v0.18.0 → v0.19.0
  • golang.org/x/sys: v0.38.0 → v0.40.0
  • golang.org/x/telemetry: 078029d8fff8a5
  • golang.org/x/term: v0.37.0 → v0.39.0
  • golang.org/x/text: v0.31.0 → v0.33.0
  • golang.org/x/tools: v0.38.0 → v0.40.0
  • google.golang.org/genproto/googleapis/api: a0af3ef8636f87
  • google.golang.org/genproto/googleapis/rpc: a0af3ef8636f87
  • google.golang.org/grpc: v1.72.3 → v1.78.0
  • google.golang.org/protobuf: v1.36.7 → v1.36.11
  • sigs.k8s.io/structured-merge-diff/v6: v6.3.0 → d9cc664
Removed
  • github.com/zeebo/errs: v1.4.0

Thanks to all our contributors! 😊

v1.12.3

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.31.x -> v1.35.x
  • Workload Cluster: v1.29.x -> v1.35.x

More information about version support can be found here

Changes since v1.12.2

📈 Overview

  • 7 new commits merged
  • 1 feature addition ✨
  • 2 bugs fixed 🐛

✨ New Features

  • KCP: Bump coredns/corefile-migration to v1.0.30 (#​13294)

🐛 Bug Fixes

  • e2e: Add wait-resource-versions-{become,remain}-stable intervals to e2e config (#​13328)
  • Misc: Fix bug while setting status for deprecated fields (#​13344)

🌱 Others

  • clusterctl: Update cert-manager to v1.19.3 (#​13314)
  • clusterctl: Update to cert-manager v1.19.2 (#​13278)
  • Dependency: Go bump 1.24.13 (#​13324)

📖 Additionally, there has been 1 contribution to our documentation and book. (#​13261)

Dependencies

Added

Nothing has changed.

Changed
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.12.2

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.31.x -> v1.35.x
  • Workload Cluster: v1.29.x -> v1.35.x

More information about version support can be found here

Changes since v1.12.1

📈 Overview

  • 14 new commits merged
  • 4 bugs fixed 🐛

🐛 Bug Fixes

  • API: Fix v1beta1 ControlPlane contract to handle .status.initialized correctly (#​13188)
  • ClusterClass: Allow adding spec via ClusterClass JSON patches (#​13226)
  • Runtime SDK: Improve client cert/key rotation of the RuntimeSDK client (#​13217)
  • Testing: Fix webhook envtest tests for Kubernetes < v1.35 (#​13172)

🌱 Others

  • CI: Use env test 1.35.0 (#​13169)
  • ClusterClass: Improve topology diff (#​13173)
  • Dependency: Bump Go to v1.24.12 (#​13241)
  • Dependency: Bump to controller-runtime v0.22.5 (#​13246)
  • KCP: Remove the ControlPlaneKubeletLocalMode for kubeadm 1.36 later (#​13211)
  • MachineHealthCheck: Decrease verbosity for MHC log entry (#​13203)

📖 Additionally, there have been 4 contributions to our documentation and book. (#​13197, #​13198, #​13208, #​13219)

Dependencies

Added

Nothing has changed.

Changed
  • k8s.io/api: v0.34.2 → v0.34.3
  • k8s.io/apiextensions-apiserver: v0.34.2 → v0.34.3
  • k8s.io/apimachinery: v0.34.2 → v0.34.3
  • k8s.io/apiserver: v0.34.2 → v0.34.3
  • k8s.io/client-go: v0.34.2 → v0.34.3
  • k8s.io/code-generator: v0.34.2 → v0.34.3
  • k8s.io/component-base: v0.34.2 → v0.34.3
  • k8s.io/kms: v0.34.2 → v0.34.3
  • sigs.k8s.io/controller-runtime: v0.22.4 → v0.22.5
Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.12.1

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.31.x -> v1.35.x
  • Workload Cluster: v1.29.x -> v1.35.x

More information about version support can be found here

Highlights

  • Support for Kubernetes v1.35

Changes since v1.12.0

📈 Overview

  • 8 new commits merged
  • 1 bug fixed 🐛

🐛 Bug Fixes

  • KCP/MachineSet: Preserve existing object names for backward compatibility with pre-v1.7 in-place updates (#​13147)

🌱 Others

  • CI: Bump Kubernetes version used for testing to v1.35.0-rc.1 (#​13139)
  • e2e: Bump kind to v0.31.0 (#​13163)
  • e2e: Bump Kubernetes version used for testing to v1.35.0 (#​13161)
  • e2e: Bump to etcd-v3.6.6-0 (#​13145)

📖 Additionally, there have been 3 contributions to our documentation and book. (#​13141, #​13154, #​13160)

Dependencies

Added

Nothing has changed.

Changed

Nothing has changed.

Removed

Nothing has changed.

Thanks to all our contributors! 😊

v1.12.0

Compare Source

👌 Kubernetes version support

  • Management Cluster: v1.31.x -> v1.34.x
  • Workload Cluster: v1.29.x -> v1.34.x

More information about version support can be found here

Highlights

  • Bumped to Go 1.24, controller-runtime v0.22, k8s.io/* v0.34, controller-gen v0.19
  • In-place updates
  • Cluster API introduces support for update extensions allowing users to execute changes on existing machines without deleting the machines and creating a new one.
  • Both KCP and Machine deployments support in-place updates based on the new update extension
  • Can be enabled with the new InPlaceUpdates feature gate
  • More details can be found in the proposal
  • Chained upgrades
  • Clusters using managed topologies can now upgrade by more than one minor Kubernetes version by performing chained and efficient upgrades.
  • Upgrade plan will be computed using Kubernetes version from the ClusterClass or by calling a new runtimeExtension (also defined in the ClusterClass)
  • Existing lifecycle hooks have been adapted to the new workflow, new lifecycle hooks have been introduced to allow granular control of the upgrade steps.
  • More details can be found in the proposal
  • MachineHealthCheck: Add support for checking Machine conditions (#​12827)
  • Machine: First part of the Taint propagation proposal (Machine/MachineSet/MachineDeployment) (#​12936, #​12966)
  • Feature tracking issue
  • Can be enabled with the new MachineTaintPropagation feature gate
  • KCP/CABPK: Add EncryptionAlgorithm field to Kubeadmconfig to support keys generated with RSA-3072, RSA-4096, ECDSA-P256, ECDSA-P384 (#​12859)
  • Introduce ReconcilerRateLimiting feature (#​13006)
  • Can be enabled with the new ReconcilerRateLimiting feature gate
  • Rate-limits all reconcilers to at most 1 request per second

Note: Cluster API is only supported on conformant Kubernetes Clusters and contract-relevant provider resources (e.g. InfraCluster) have to be implemented as CRDs (i.e. not via an aggregated apiserver).

Other changes

  • clusterctl: Add conditions filter for clusterctl describe (#​12991)
  • clusterctl: clusterctl move blocks when Cluster or ClusterClass is paused (#​12786)
  • KCP: Enable websocket dialer with fallback to spdy (for communication with etcd) (#​12902)
  • Runtime SDK: Add defensive response status checking in runtime client (#​12898)
  • Improved logging across several controllers
  • Improved e2e test coverage, e.g.: CAPD: Add scale from/to 0 support for CAPD (#​12572)
  • New providers in clusterctl: HCP (#​12800) control plane provider, Metal3 IPAM provider (#​12756), metal-stack infrastructure provider (#​12925)

Deprecation and Removals Warning

For additional details for providers, please take a look at Cluster API v1.11 compared to v1.12.

Changes since v1.11.0

📈 Overview

  • 298 new commits merged
  • 5 breaking changes ⚠️
  • 42 feature additions ✨
  • 42 bugs fixed 🐛

⚠️ Breaking Changes

  • CI: Improve KAL config docs for forbidding OpenAPI defaulting (#​12869)
  • clusterctl: Block move when Cluster or ClusterClass is paused (#​12786)
  • Dependency: Bump to controller-runtime v0.22 & controller-tools v0.19 (#​12634)
  • Runtime SDK: Improve chained upgrade observability (#​12973)
  • Runtime SDK: Make the AfterClusterUpgrade hook blocking (#​12984)

✨ New Features

  • API/Machine/MachineSet/MachineDeployment: Machine related API changes, conversion and feature gate (#​12936)
  • CABPK: Add EncryptionAlgorithm to Kubeadmconfig (#​12859)
  • CAPD: Add scale from/to 0 support for CAPD (#​12572)
  • CI: Bump autoscaler to a9cb59f (#​12643)
  • CI: Bump Kubernetes in tests to v1.34.0 and claim support for v1.34 (#​12699)
  • ClusterCache/KCP: Deprecate GetClientCertificatePrivateKey and stop using it in KCP (#​12846)
  • ClusterCache: Add GetUncachedClient() (#​12803)
  • ClusterClass: Add .spec.upgrade.external.generateUpgradePlanExtension field to ClusterClass (#​12809)
  • ClusterClass: Add types and hook for GenerateUpgradePlan (#​12823)
  • ClusterClass: Additional validation in Cluster/ClusterClass webhook for chained upgrades (#​12816)
  • ClusterClass: Call GenerateUpgradePlanRequest Runtime Extension (#​12903)
  • ClusterClass: Implement core logic for chained upgrades (#​12726)
  • clusterctl: Add conditions filter for clusterctl describe (#​12991)
  • Control-plane: Add new control-plane provider HCP (#​12800)
  • e2e: Bump Kubernetes version used for testing to v1.34.0-rc.1 (#​12623)
  • e2e: Bump Kubernetes version used for testing to v1.34.0-rc.2 (#​12658)
  • e2e: Bump Kubernetes version used for testing to v1.35.0-beta.0 (#​13029)
  • e2e: Change RuntimeSDK e2e test ClusterClass to use GenerateUpgradePlan extension (#​12955)
  • e2e: Implement e2e test for in-place updates (#​12938)
  • KCP/CABPK/CI: Bump KAL to pick up latest requiredfields linter, add Min/MaxLength to BootstrapToken (#​12563)
  • KCP/MachineSet: Refactor BootstrapConfig/InfraMachine managedFields for in-place (#​12890)
  • KCP: Bump coredns/corefile-migration to v1.0.28 (#​12748)
  • KCP: Bump coredns/corefile-migration to v1.0.29 (#​12862)
  • KCP: Bump corefile-migration to v1.0.27 (#​12636)
  • KCP: Compare ClusterConfiguration via KubeadmConfig instead of annotation on Machine (#​12758)
  • KCP: Extend rollout logic for in-place updates (#​12840)
  • KCP: Implement CanUpdateMachine (#​12857)
  • KCP: Implement trigger in-place update (#​12897)
  • Machine: Add in-place updates support for machine controller (#​12831)
  • MachineDeployment: Add in-place to rollout planner (#​12865)
  • MachineDeployment: Implement CanUpdateMachineSet (#​12965)
  • MachineHealthCheck: Add support for checking Machine conditions in MachineHealthCheck (#​12827)
  • Misc: Add inplace updates featuregate (#​12755)
  • Misc: Improve logs, errors and conditions (#​12992)
  • Misc: Introduce & use wait for cache utils (#​12957)
  • Misc: Introduce reconciler rate-limiting and hook caching (#​13006)
  • Runtime SDK/IPAM/MachinePool: Cleanup exp packages (#​12651)
  • Runtime SDK: Add in-place update hooks to API (#​12343)
  • Runtime SDK: Add lifecycle hooks for chained-upgrade (#​12878)
  • Runtime SDK: Call new lifecycle hooks for chained-upgrades (#​12891)
  • Runtime SDK: Ensure ExtensionConfig controller can be used outside of the core provider (#​12754)
  • Runtime SDK: Implement GenerateUpgradePlan handler (#​12927)

🐛 Bug Fixes

  • API: Only try to convert infraRefs if they are set (#​12686)
  • API: Register conversion funcs in schemes (#​12687)
  • CABPK: Always use latest apiVersion when getting owner of KubeadmConfig in CABPK (#​12685)
  • CAPD: CAPD on rootless podman (#​12941)
  • CAPD: Fix the format error of healthCheck in test templates (#​12787)
  • CAPD: Remove finalizers during deletion if ownerRef was never set (#​12675)
  • CAPD: Run CAPD conversion tests in CI (#​12583)
  • CAPIM: Eliminate data race in DialContext (#​12778)
  • ClusterClass/MachinePool: Fix MP error in desired state calculation during Cluster creation (#​12607)
  • ClusterClass: Do not overwrite global http.DefaultClient TLSConfig (#​13063)
  • ClusterClass: Ensure holder field path in GeneratePatchRequest is set based on contract (#​12684)
  • ClusterClass: Fix field paths in ClusterClass compatibility validation errors (#​12660)
  • ClusterClass: Fix wait for cache in reconcile_state.go (#​13032)
  • ClusterClass: Stop adding conversion-data annotation to Cluster object (#​12719)
  • ClusterClass: Stop writing zero values for spec.controlPlaneEndpoint to ControlPlane objects (#​12958)
  • clusterctl: Removing Ready/Available prefix from STATUS Column (#​12729)
  • clusterctl: Verify providers need upgrade before applying (#​12753)
  • Devtools: Fix kube-state-metrics deployment (#​13024)
  • e2e: Do not require kubetest configration if not needed (#​12948)
  • e2e: Fix autoscaler e2e test flake (#​12613)
  • e2e: Fix e2e test issues introduced by chained upgrades (#​12766)
  • e2e: Fix objects with Changed Resource Versions flake (#​12848)
  • e2e: Fix upgrade runtimesdk test (#​12833)
  • e2e: Fix WaitForMachinesReady interval (#​13051)
  • e2e: Increase reconcile timeout for DockerMachine (#​13099)
  • e2e: Propagate clusterctl variables for cluster upgrades (#​12949)
  • KCP: Fix ControlPlaneComponentHealthCheckSeconds validation in KubeadmConfigSpec.Validate (#​12609)
  • KCP: Fix conversion issue in KubeadmControlPlaneTemplate with rolloutStrategy.type (#​12608)
  • KCP: Fix KCP KubeadmConfig isJoin detection (#​13035)
  • KCP: Grant delete permissions to Secrets. (#​13097)
  • Machine/MachinePool: Fix MachinePool nodeRef UID mismatch after K8s upgrade (#​12392)
  • Machine/MachineSet: Use MachineSet template values in completeMoveMachine for in-place updates (#​13085)
  • MachineDeployment: Fix race conditions ScaleDownOldMS (#​12812)
  • MachineDeployment: Fix race conditions ScaleDownOldMS OnDelete (#​12830)
  • MachineDeployment: Fix rollout with unavailable machines (#​13020)
  • Runtime SDK: Export ExtensionConfig webhook (#​12598)
  • Testing/e2e: Fix unit test flakes, improve clusterctl download error in e2e tests (#​13056)
  • Testing: Fix flaky TestFuzzyConversion (Cluster) test (#​12618)
  • Testing: Fix flaky TestReconcileMachinePhases unit test (#​12616)
  • Testing: Fix flaky TestReconcileState unit test (#​12617)
  • Testing: Fix KubeadmConfig fuzz test flake (#​12679)
  • util: Fix a panic in conditions.Delete method if the sources condition list is empty (#​13053)

🌱 Others

  • API: Relax validation for Machine .status.addresses to maximum of 128 instead of 32 items (#​13090)
  • Autoscaling: Bump autoscaler in e2e tests to v1.33.1 (#​12790)
  • CABPK: Migrate from Requeue to RequeueAfter in CABPK (#​12988)
  • CAPD: Cleanup CAPD exp packages (#​12672)
  • CAPD: Recreate container if we re-enter reconciliation and it exists but is not running (#​12923)
  • CI: Add OpenAPI defaulting detection for KubeadmConfig by using forbiddenmarkers (#​12851)
  • CI: Block FIXME comments (#​12772)
  • CI: Bump golangci-lint v2.7.0 (#​13109)
  • CI: Bump KAL & add nodurations linter (#​12743)
  • CI: Bump KAL & add nonullable and forbiddenmarkers linter (#​12724)
  • CI: Bump KAL & drop schemaless excludes (#​12646)
  • CI: Bump KAL, adjust excludes (#​12650)
  • CI: Bump Kube API Linter version (#​12974)
  • CI: Bump Kubernetes version used for testing to v1.35.0-rc.0 (#​13105)
  • CI: Bump softprops/action-gh-release from 2.4.2 to 2.5.0 in the all-github-actions group (#​13094)
  • CI: Bump to golangci-linter version to v2.4.0 (#​12703)
  • CI: Update metrics configuration to v1beta2 (#​12642)
  • Cluster: Allow >1 minor version upgrades if generateUpgradePlan extension is defined (#​12979)
  • Cluster: Simplify Cluster webhook (#​12895)
  • ClusterClass: Add input validations for desired state generator function (#​12655)
  • ClusterClass: Improve topology reconciled condition (#​13002)
  • clusterctl: Add metal-stack infrastructure provider (#​12925)
  • clusterctl: Add Metal3 as an IPAMProvider (#​12756)
  • clusterctl: Allow metadata.yaml's Kind to be empty (#​12714)
  • clusterctl: Bump cert-manager to v1.19.0 (#​12828)
  • clusterctl: Bump cert-manager to v1.19.1 (#​12873)
  • clusterctl: Bumping tablewriter to v1.0.9 - latest (#​12781)
  • clusterctl: Show Available condition for CP (#​12759)
  • ClusterResourceSet: Remove deprecated ClusterResourceSet feature gate (#​12950)
  • Dependency: Bump github.com/go-viper/mapstructure/v2 to fix CVE (#​12677)
  • Dependency: Bump Go to v1.24.10 (#​12962)
  • Dependency: Bump Go to v1.24.11 (#​13111)
  • Dependency: Bump Go to v1.24.6 (#​12611)
  • Dependency: Bump go to v1.24.7 (#​12733)
  • Dependency: Bump Go to v1.24.8 (#​12826)
  • Dependency: Bump Go to v1.24.9 (#​12867)
  • Dependency: Bump golang.org/x/crypto to v0.45 to fix CVE (#​13036)
  • Dependency: Bump to envtest v1.34.0 (#​12702)
  • Devtools: Drop ALL groups in tilt (#​13001)
  • Devtools: Extend CR dashboard to handle capi_reconcile metrics (#​13040)
  • Devtools: Promtail to alloy migration (#​11945)
  • Documentation/MachinePool: Add structure for area/machinepool ownership in OWNERS files (#​13018)
  • e2e: Add quickstart e2e test with v1beta1 with ClusterClass and RuntimeSDK (#​12577)
  • e2e: Bump autoscaler in e2e tests to v1.34.0 (#​12806)
  • e2e: Bump autoscaler version used for testing to v1.34.2 (#​13104)
  • e2e: Bump pause image in e2e tests to 3.10.1 (default for Kubernetes v1.34) (#​12731)
  • e2e: Bump to kind v0.30.0 (#​12701)
  • e2e: Do not expect Machines for MachinePools not supporting Machines (#​13077)
  • e2e: E2e coverage via md rollout test (#​12966)
  • e2e: Enable IPv6 test again (#​12597)
  • e2e: Fix autoscaler test (#​12978)
  • e2e: Fix kind build git commit setting (#​12858)
  • e2e: Fix md-rollout test to test in-place taint changes before doing the rollout change (#​13031)
  • e2e: Fix self-hosted to actually read DOCKER_PRELOAD_IMAGES from the e2e config (#​12907)
  • e2e: Get kind mgmt cluster logs in clusterctl upgrade test (#​12676)
  • e2e: Improve check for Cluster Available condition in e2e tests (#​12594)
  • e2e: Make clusterctl upgrade test to work when there are no machines (#​13074)
  • e2e: Set startup taint for autoscaler in e2e tests (#​12736)
  • e2e: Skip test using outdated docker client release 1.12 (#​13126)
  • e2e: Start testing against Kubernetes v1.35 (#​12709)
  • e2e: Use crane to pre-pull images instead of docker pull (#​13119)
  • e2e: Use wait-machine-upgrade timeout in ClusterClassChanges tests to wait for machines to be ready (#​13013)
  • e2e: Wait for cluster deletion in runtime sdk test (#​12956)
  • KCP/CABPK: Stop using unsafe for EnvVar conversion (#​12619)
  • KCP/MachineSet/MachineDeployment: Remove unused CleanUpManagedFieldsForSSAAdoption code (#​12788)
  • KCP: Add current/desired objects to NotUpToDateResult & refactor object creation (#​12817)
  • KCP: Avoid KCP rollouts if only ControlPlaneComponentHealthCheckSeconds is changed (#​13026)
  • KCP: Check for error before checking reconcile result (#​12935)
  • KCP: Enable websocket dialer with fallback to spdy (#​12902)
  • KCP: Fix race condition on KCP initialized condition (#​12980)
  • KCP: Improve KCP etcd client crt/key caching (#​12977)
  • KCP: Simplify cleanupConfigFields in KCP (#​12776)
  • KCP: Simplify KCP matchesKubeadmConfig (#​12813)
  • KCP: Variable/func renames, func order (#​12793)
  • Logging: Reduce noisy logs (#​12606)
  • Machine/MachineSet/MachineDeployment: Adjust UpToDate condition to consider Updating, move UpToDate condition to Machine ctrl for workers (#​12959)
  • Machine: Add DisableCertPrivateKey function for clustercache for test flake (#​12921)
  • Machine: Consider updating condition when computing Machine's ready condition (#​12939)
  • Machine: Fix TestReconcileMachinePhases flake (#​12818)
  • Machine: Implement Updating Machine phase (#​12940)
  • Machine: Requeue for Machine Available condition (#​12953)
  • Machine: Use apireader to directly talk to apiserver (#​12819)
  • MachineDeployment: Add in-place to machineset controller (#​12906)
  • MachineDeployment: Add more info to logs for rollout changes (#​12997)
  • MachineDeployment: Add rollout planner (#​12804)
  • MachineDeployment: Cleanup getMachinesSucceeded flag from MD controller (#​12882)
  • MachineDeployment: Defer in-place updates for machines not yet provisioned (#​13007)
  • MachineDeployment: Fix misleading log statements and optimize logic (#​12871)
  • MachineDeployment: Move compute and create ms to rollout planner (#​12841)
  • MachineDeployment: Refactor MachineTemplateUpToDate (#​12811)
  • MachineDeployment: Rollout-planner improve checks for scalingOrInPlaceUpdateInProgress (#​12954)
  • MachineDeployment: Simplify rollout planner (#​12899)
  • MachineHealthCheck: Add reason to condition, add reason+message to log (#​12987)
  • MachineHealthCheck: No longer requeue when remediation is not allowed (#​12924)
  • MachinePool: Migrate from Requeue to RequeueAfter in MachinePool tests (#​13027)
  • MachineSet: Fix flakes in syncMachines unit test (#​12918)
  • MachineSet: Fix race conditions with global scheme in TestMachineSetReconciler_reconcileUnhealthyMachines (#​12919)
  • MachineSet: Refactor BootstrapConfig/InfraMachine creation in MachineSet controller (#​12881)
  • Misc: Add Proxy Support to Docker Build-Args (#​12669)
  • Misc: Avoid using deprecated client.Patch method (#​12737)
  • Misc: Cleanup TestReconcileMachinePhases (#​12976)
  • Misc: Consistent webhook file/folder structure (#​12791)
  • Misc: Improve mark hook utils (#​12994)
  • Misc: Improve wait for cache (#​12993)
  • Misc: Log version and git commit on controller start (#​12694)
  • Misc: Stop setting and relying on TypeMeta in typed objects (#​12533)
  • Misc: Use errors package of Go (#​10875)
  • Release/clusterctl: Add CAPRKE2 to release tool’s issue-opening providers list (#​12713)
  • Release/Testing: Added test cases for list.go and github.go (#​11937)
  • Release: Clarify semantic of --previous-release-version (#​12995)
  • Release: Prepare main branch for v1.12 development (#​12723)
  • Release: Update release notes tool to handle multiples_areas and colons (#​12738)
  • Runtime SDK: Add defensive response status checking in runtime client (#​12898)
  • Runtime SDK: Add hint to look into controller logs to runtime client error response (#​12849)
  • Runtime SDK: Add httpClientCache to runtime client (#​13080)
  • Runtime SDK: Deduplicate extension filtering and response validation logic (#​12905)
  • Runtime SDK: Migrate from Requeue to RequeueAfter in extensionconfig (#​13000)
  • Testing: Add clusterapi crd groups to audit logs for envtest (#​12883)
  • Testing: Enable audit logs for envtest-based unit tests if ARTIFACTS env var is set (#​12847)
  • Testing: Implement unit-tests for desired state generator (#​12656)
  • Testing: Update version matrix for GitHub workflows for release 1.11 (#​12586)
  • util: Add check version against metadata utility (#​12529)
  • util: Add items to cache immediately after apply (#​12877)

📖 Additionally, there have been 49 contributions to our documentation and book. (#​12085, #​12199, #​12329, #​12562, #​12581, #​12582, #​12593, #​12600, #​12601, #​12647, #​12662, #​12663, #​12673, #​12710, #​12741, #​12761, #​12777, #​12779, #​12797, #​12810, #​12814, #​12835, #​12836, [#​12854](https://redirec


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

To execute skipped test pipelines write comment /ok-to-test.


Documentation

Find out how to configure dependency updates in MintMaker documentation or see all available configuration options in Renovate documentation.

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 openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Apr 8, 2026

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

Updated Go module dependencies in api/go.mod, including primary packages (Kubernetes and cluster-api related modules) to newer versions. Removed select indirect dependencies and updated versions of other indirect packages to maintain compatibility and security.

Changes

Cohort / File(s) Summary
Go Module Dependencies
api/go.mod
Bumped primary dependencies: k8s.io/apimachinery, k8s.io/client-go (v0.34.2 → v0.35.3), sigs.k8s.io/cluster-api (v1.11.0 → v1.13.0), sigs.k8s.io/controller-runtime (v0.22.4 → v0.23.3). Removed indirect dependencies: github.com/gogo/protobuf, github.com/spf13/pflag, github.com/stretchr/testify. Updated other indirect dependencies and adjusted replace directive for cluster-api to v1.13.0.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

🚥 Pre-merge checks | ✅ 11 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Ipv6 And Disconnected Network Test Compatibility ⚠️ Warning PR adds five new Ginkgo test files containing hardcoded IPv4 addresses including 192.186.126.10, 10.0.36.14, 1.2.3.4/24, and others. Update tests to dynamically detect IP family or use IPv6 equivalents; wrap IPv4-only tests with InIPv4ClusterContext() to skip on IPv6 clusters.
✅ Passed checks (11 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed This check is not applicable to the provided pull request. The PR only modifies api/go.mod and api/go.sum files to update dependency versions (no test files were added, modified, or removed).
Test Structure And Quality ✅ Passed PR only modifies api/go.mod with dependency updates; no test code changes detected.
Microshift Test Compatibility ✅ Passed This pull request only updates module dependencies and configuration files without adding any new Ginkgo e2e tests.
Single Node Openshift (Sno) Test Compatibility ✅ Passed This PR contains only Go module dependency updates in api/go.mod and does not introduce any new Ginkgo e2e tests.
Topology-Aware Scheduling Compatibility ✅ Passed PR only updates Go module dependency versions in api/go.mod without modifying deployment manifests, operator code, or controllers.
Ote Binary Stdout Contract ✅ Passed PR only updates Go module versions and vendored files with no source code modifications that could introduce stdout violations.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the primary change as updating the Cluster API module, although its target version does not match the changeset.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x

Comment @coderabbitai help to get the list of available commands.

@openshift-ci openshift-ci Bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Apr 8, 2026
@openshift-ci
openshift-ci Bot requested review from carbonin and eliorerz April 8, 2026 17:42
@openshift-ci

openshift-ci Bot commented Apr 8, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: red-hat-konflux[bot]
Once this PR has been reviewed and has the lgtm label, please assign rccrdpccl for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details 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

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Apr 8, 2026
@openshift-ci

openshift-ci Bot commented Apr 8, 2026

Copy link
Copy Markdown

Hi @red-hat-konflux[bot]. Thanks for your PR.

I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

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-sigs/prow repository.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@go.mod`:
- Line 135: Remove the redundant replace directive for the module
sigs.k8s.io/cluster-api (the line "sigs.k8s.io/cluster-api =>
sigs.k8s.io/cluster-api v1.12.5") from go.mod; after deleting that replace
entry, run go mod tidy to ensure the module graph is consistent and that all
references still resolve to v1.12.5.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: be5283a8-1359-4180-9055-12a4ca9f2982

📥 Commits

Reviewing files that changed from the base of the PR and between 1ef450e and e7a725a.

⛔ Files ignored due to path filters (70)
  • api/go.sum is excluded by !**/*.sum
  • api/vendor/golang.org/x/net/http2/transport.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/net/http2/writesched_priority_rfc9218.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/japanese/eucjp.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/japanese/iso2022jp.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/japanese/shiftjis.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/korean/euckr.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/simplifiedchinese/gbk.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/simplifiedchinese/hzgb2312.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/traditionalchinese/big5.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/text/encoding/unicode/unicode.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/filedesc/desc.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/impl/codec_map.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/impl/decode.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/impl/validate.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/internal/version/version.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/protobuf/proto/decode.go is excluded by !**/vendor/**
  • api/vendor/modules.txt is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/cluster_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/conversion.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/groupversion_info.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/machine_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/zz_generated.conversion.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/zz_generated.openapi.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/cluster_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/clusterclass_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/common_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machine_phase_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machine_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machinehealthcheck_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machineset_types.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/v1beta1_condition_consts.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/zz_generated.deepcopy.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/zz_generated.openapi.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/structured-merge-diff/v6/value/reflectcache.go is excluded by !**/vendor/**
  • go.sum is excluded by !**/*.sum
  • vendor/k8s.io/client-go/tools/cache/controller.go is excluded by !vendor/**, !**/vendor/**
  • vendor/k8s.io/client-go/tools/cache/delta_fifo.go is excluded by !vendor/**, !**/vendor/**
  • vendor/k8s.io/client-go/tools/cache/reflector.go is excluded by !vendor/**, !**/vendor/**
  • vendor/k8s.io/client-go/tools/cache/reflector_data_consistency_detector.go is excluded by !vendor/**, !**/vendor/**
  • vendor/k8s.io/client-go/tools/cache/shared_informer.go is excluded by !vendor/**, !**/vendor/**
  • vendor/k8s.io/client-go/tools/cache/the_real_fifo.go is excluded by !vendor/**, !**/vendor/**
  • vendor/k8s.io/client-go/util/consistencydetector/data_consistency_detector.go is excluded by !vendor/**, !**/vendor/**
  • vendor/modules.txt is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/cluster_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/conversion.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/groupversion_info.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/machine_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/zz_generated.conversion.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta1/zz_generated.openapi.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/cluster_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/clusterclass_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/common_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machine_phase_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machine_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machinehealthcheck_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/machineset_types.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/v1beta1_condition_consts.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/zz_generated.deepcopy.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/api/core/v1beta2/zz_generated.openapi.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/util/conditions/setter.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/util/conditions/sort.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/util/patch/patch.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/util/patch/utils.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/cluster-api/util/util.go is excluded by !vendor/**, !**/vendor/**
  • vendor/sigs.k8s.io/structured-merge-diff/v6/value/reflectcache.go is excluded by !vendor/**, !**/vendor/**
📒 Files selected for processing (2)
  • api/go.mod
  • go.mod

Comment thread go.mod Outdated
github.com/openshift/assisted-service/models => github.com/openshift/assisted-service/models v0.0.0-20260408081236-e807c36156f2
github.com/openshift/cluster-api-provider-agent/api => ./api
sigs.k8s.io/cluster-api => sigs.k8s.io/cluster-api v1.11.0
sigs.k8s.io/cluster-api => sigs.k8s.io/cluster-api v1.12.5

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Check for conflicting cluster-api version requirements

echo "=== Checking why module for conflicting cluster-api requirements ==="
go mod why -m sigs.k8s.io/cluster-api

echo -e "\n=== Checking transitive dependencies requiring cluster-api ==="
go mod graph | grep 'sigs.k8s.io/cluster-api@' | grep -v '@v1.12.5' || echo "No conflicting versions found"

Repository: openshift/cluster-api-provider-agent

Length of output: 4614


Remove the redundant replace directive.

The replace directive sigs.k8s.io/cluster-api => sigs.k8s.io/cluster-api v1.12.5 at line 135 is unnecessary. Verification shows no conflicting versions of cluster-api exist in transitive dependencies—all references resolve to v1.12.5 only. The replace directive provides no benefit and should be removed.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@go.mod` at line 135, Remove the redundant replace directive for the module
sigs.k8s.io/cluster-api (the line "sigs.k8s.io/cluster-api =>
sigs.k8s.io/cluster-api v1.12.5") from go.mod; after deleting that replace
entry, run go mod tidy to ensure the module graph is consistent and that all
references still resolve to v1.12.5.

@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 2 times, most recently from af1de4d to df9d65b Compare April 14, 2026 08:48
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 2 times, most recently from 271ff31 to 34fa0a2 Compare April 21, 2026 17:17
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.12.5 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.0 Apr 21, 2026
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 6 times, most recently from 2a523c2 to 19406c8 Compare April 28, 2026 16:26
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.0 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.1 Apr 28, 2026
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 2 times, most recently from 1bf7df3 to 33ccc8d Compare May 6, 2026 17:40
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch from 33ccc8d to 61e2f4b Compare May 13, 2026 18:13
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.1 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.2 May 13, 2026
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.2 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.2 - autoclosed May 20, 2026
@red-hat-konflux red-hat-konflux Bot closed this May 20, 2026
@red-hat-konflux
red-hat-konflux Bot deleted the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch May 20, 2026 00:35
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.2 - autoclosed NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.2 May 20, 2026
@red-hat-konflux red-hat-konflux Bot reopened this May 20, 2026
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 3 times, most recently from c777327 to 0c36b07 Compare May 20, 2026 15:27
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 2 times, most recently from 5bb1c22 to 4d9fb52 Compare June 4, 2026 16:33
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 3 times, most recently from 0893aca to 565ad7f Compare June 23, 2026 19:08
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.2 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.3 Jun 23, 2026
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 5 times, most recently from 21855f0 to 5b1cf05 Compare July 14, 2026 00:16
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch from 5b1cf05 to 826abc9 Compare July 17, 2026 12:17
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.3 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.4 Jul 17, 2026
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch 2 times, most recently from f05a34b to b93a485 Compare August 5, 2026 21:41
Signed-off-by: red-hat-konflux <126015336+red-hat-konflux[bot]@users.noreply.github.com>
@red-hat-konflux
red-hat-konflux Bot force-pushed the konflux/mintmaker/master/sigs.k8s.io-cluster-api-1.x branch from b93a485 to 0cd0179 Compare August 12, 2026 00:32
@red-hat-konflux red-hat-konflux Bot changed the title NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.13.4 NO-ISSUE: Update module sigs.k8s.io/cluster-api to v1.14.0 Aug 12, 2026
@red-hat-konflux

Copy link
Copy Markdown
Author

⚠️ Artifact update problem

Renovate failed to update artifacts related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: api/go.sum
Command failed: go get -t ./...
go: downloading github.com/openshift/api v0.0.0-20240830023148-b7d0481c9094
go: downloading k8s.io/apimachinery v0.36.3
go: downloading k8s.io/client-go v0.36.3
go: downloading sigs.k8s.io/cluster-api v1.14.0
go: downloading sigs.k8s.io/cluster-api/api v0.0.0-00010101000000-000000000000
go: downloading k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2
go: downloading k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a
go: downloading sigs.k8s.io/structured-merge-diff/v6 v6.4.2
go: downloading k8s.io/api v0.36.3
go: downloading github.com/go-logr/logr v1.4.4
go: downloading go.yaml.in/yaml/v2 v2.4.3
go: downloading golang.org/x/net v0.56.0
go: downloading golang.org/x/text v0.40.0
go: github.com/openshift/cluster-api-provider-agent/api/v1alpha1 imports
	sigs.k8s.io/cluster-api/api/core/v1beta2: sigs.k8s.io/cluster-api/api@v0.0.0-00010101000000-000000000000: invalid version: unknown revision 000000000000
go: github.com/openshift/cluster-api-provider-agent/api/v1alpha1 imports
	sigs.k8s.io/cluster-api/errors: cannot find module providing package sigs.k8s.io/cluster-api/errors

File name: go.sum
Command failed: go get -t ./...
go: downloading github.com/go-openapi/swag v0.25.3
go: downloading github.com/openshift/hive/apis v0.0.0-20260527211446-a455a02f440e
go: downloading sigs.k8s.io/cluster-api/api v0.0.0-00010101000000-000000000000
go: downloading github.com/onsi/gomega v1.42.1
go: downloading github.com/go-openapi/errors v0.22.1
go: downloading github.com/go-openapi/strfmt v0.23.0
go: downloading github.com/openshift/api v0.0.0-20260318185450-1f2fa3f09f4e
go: downloading github.com/go-openapi/swag/cmdutils v0.25.3
go: downloading github.com/go-openapi/swag/conv v0.25.3
go: downloading github.com/go-openapi/swag/fileutils v0.25.3
go: downloading github.com/go-openapi/swag/jsonname v0.25.3
go: downloading github.com/go-openapi/swag/jsonutils v0.25.3
go: downloading github.com/go-openapi/swag/loading v0.25.3
go: downloading github.com/go-openapi/swag/mangling v0.25.3
go: downloading github.com/go-openapi/swag/netutils v0.25.3
go: downloading github.com/go-openapi/swag/stringutils v0.25.3
go: downloading github.com/go-openapi/swag/typeutils v0.25.3
go: downloading github.com/go-openapi/swag/yamlutils v0.25.3
go: downloading k8s.io/apiextensions-apiserver v0.36.3
go: downloading go.uber.org/zap v1.28.0
go: downloading github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2
go: downloading github.com/mitchellh/mapstructure v1.5.0
go: downloading go.mongodb.org/mongo-driver v1.17.4
go: downloading github.com/openshift/installer v1.4.22-ec5
go: downloading github.com/prometheus/procfs v0.19.2
go: downloading golang.org/x/sync v0.22.0
go: github.com/openshift/cluster-api-provider-agent/controllers imports
	sigs.k8s.io/cluster-api/api/core/v1beta2: sigs.k8s.io/cluster-api/api@v0.0.0-00010101000000-000000000000: invalid version: unknown revision 000000000000
go: github.com/openshift/cluster-api-provider-agent imports
	github.com/openshift/cluster-api-provider-agent/api/v1beta1 imports
	sigs.k8s.io/cluster-api/errors: cannot find module providing package sigs.k8s.io/cluster-api/errors

@openshift-ci openshift-ci Bot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant