You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[Chained and efficient upgrades](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/proposals/20250513-chained-and-efficient-upgrades-for-clusters-with-managed-topologies.md)
* The `controlplane.cluster.x-k8s.io/kubeadm-cluster-configuration` annotation that KCP was previously setting on Machines has been removed.
23
-
KCP used this annotation to detect if a Machine requires a rollout, this is now done via the KubeadmConfig of the Machine instead.
52
+
### Cluster
24
53
25
-
### API Changes
54
+
- The new `spec.topology.controlPlane.healthCheck.checks.unhealthyMachineConditions` field has been added
55
+
- The new `spec.topology.workers.machineDeployments[].healthCheck.checks.unhealthyMachineConditions` field has been added
56
+
- The `TopologyReconciled` condition reports new `ClusterCreating` and `ClusterUpgrading` reasons
57
+
- The following reasons for the `TopologyReconciled` condition are now deprecated
58
+
-`ControlPlaneUpgradePending`
59
+
-`MachineDeploymentsCreatePending`
60
+
-`MachineDeploymentsUpgradePending`
61
+
-`MachinePoolsUpgradePending`
62
+
-`MachinePoolsCreatePending`
63
+
-`LifecycleHookBlocking`
64
+
65
+
### Machine
26
66
27
-
### Other
67
+
- The new `spec.taint` field has been added.
68
+
- The `HealthCheckSucceeded` condition reports a new `UnhealthyMachine` reason when `unhealthyMachineConditions` checks fail
69
+
- The `UpToDate` condition reports a new `Updating` reason when a machine is performing in-place updates
70
+
- The new `Updating` condition has been added. It reports status `true` when a machine is performing in-place updates.
71
+
- Supported reasons are `NotUpdating`, `InPlaceUpdating`, `InPlaceUpdateFailed`
72
+
- The field `status.phases` reports a new `Updating` phase when a machine is performing in-place updates
28
73
29
-
*`util.IsOwnedByObject`, `util.IsControlledBy` and `collections.OwnedMachines` now also require `schema.GroupKind` as input parameter.
30
-
`schema.GroupKind` is needed for cases where typed objects are passed in because controller-runtime does not guarantee that GVK is set on typed objects.
31
-
* Various Cluster API e2e tests with Kubernetes upgrades now use the `wait-control-plane-upgrade` and `wait-machine-deployment-upgrade` timeouts.
32
-
If you are running Cluster API e2e tests with upgrades you have to configure the timeouts in your e2e test configuration file, otherwise
33
-
the e2e tests will use `1s` timeout which will lead to test failures. Example:
- Reconciler rate limiting feature has been introduced ([#13006](https://github.com/kubernetes-sigs/cluster-api/pull/13006))
193
+
- Can be enabled with the new `ReconcilerRateLimiting` feature gate
194
+
- It rate-limits all reconcilers to at most 1 request per second
195
+
196
+
- `util.IsOwnedByObject`, `util.IsControlledBy` and `collections.OwnedMachines` now also require `schema.GroupKind` as input parameter.
197
+
`schema.GroupKind`is needed for cases where typed objects are passed in because controller-runtime does not guarantee that GVK is set on typed objects.
198
+
199
+
## Removals scheduled for future releases
200
+
201
+
As documented in [Suggested changes for providers](#suggested-changes-for-providers), it is highly recommended to start planning for future removals:
202
+
203
+
- v1beta1 API version will be removed tentatively in August 2026
204
+
- Starting from the CAPI release when v1beta1 removal will happen (tentative Aug 2026), the Cluster API project
205
+
will remove the Cluster API condition type, the `util/conditions/deprecated/v1beta1` package,
206
+
the `util/deprecated/v1beta1` package, the code handling old conditions in `util/patch.Helper`
207
+
and everything related to the custom Cluster API custom condition type.
208
+
- All the `status.deprecated` fields will be removed tentatively in August 2026.
209
+
- Compatibility support for the v1beta1 version of the Cluster API contract will be removed tentatively in August 2026
0 commit comments