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
Copy file name to clipboardExpand all lines: docs/book/src/05_reference/01_api_versions.md
+22-4Lines changed: 22 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,24 +4,42 @@ This page provides a detailed list of any changes between different API versions
4
4
5
5
### v1beta1 to v1beta2
6
6
7
+
#### Bootstrap
8
+
9
+
There are no breaking changes to the `RKE2Config.spec` fields.
10
+
11
+
The `RKE2ConfigTemplate` object remains largely unchanged in `v1beta2`.
12
+
13
+
An RKE2Config is considered ready when `RKE2Config.status.initialization.dataSecretCreated` is set to `true`.
14
+
15
+
The following `v1beta1``RKE2ConfigStatus` fields have been removed from `v1beta2`:
16
+
-`ready`
17
+
-`failureReason`
18
+
-`failureMessage`
19
+
20
+
These fields have been moved under `RKE2Config.status.deprecated.v1beta1` for backward compatibility.
21
+
22
+
In `v1beta1`, status conditions are using `clusterv1beta1.Conditions`, which are CAPI-specific condition types, whereas in `v1beta2` they are using `metav1.Conditions`, inline with upstream CAPI. The benefit of using `metav1.Conditions` is that it provides a standard way of reporting status that is common across many Kubernetes resource types ([reference](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/proposals/20240916-improve-status-in-CAPI-resources.md)).
23
+
7
24
#### Control Plane
8
25
9
26
In `v1beta1` the following fields were marked as `deprecated` and have been removed from `v1beta2`:
10
27
-`infrastructureRef` has been removed from `RKE2ControlPlane.spec`. Use `RKE2ControlPlane.spec.machineTemplate.spec.infrastructureRef` instead.
11
-
-`nodeDrainTimeout` has been removed from `RKE2ControlPlane.spec`. Use `RKE2ControlPlane.spec.machineTemplate.spec.deletion.nodeDrainTimeout` instead.
28
+
-`nodeDrainTimeout` has been removed from `RKE2ControlPlane.spec`. Use `RKE2ControlPlane.spec.machineTemplate.spec.deletion.nodeDrainTimeoutSeconds` instead.
12
29
13
30
The following `v1beta1` fields have moved:
14
31
-`infrastructureRef` has moved from `RKE2ControlPlaneMachineTemplate` to `RKE2ControlPlaneMachineTemplateSpec.infrastructureRef` in `v1beta2`.
32
+
- The type has changed from `corev1.ObjectReference` to `ContractVersionedObjectReference`, which uses `apiGroup` instead of `apiVersion` and does not include `namespace`, `uid`, `resourceVersion`, or `fieldPath` fields.
15
33
-`nodeDrainTimeout`, `nodeVolumeDetachTimeout` and `nodeDeletionTimeout` have moved under `RKE2ControlPlaneMachineTemplateSpec.deletion` in `v1beta2` and have been renamed to:
16
34
-`deletion.nodeDrainTimeoutSeconds`
17
35
-`deletion.nodeVolumeDetachTimeoutSeconds`
18
36
-`deletion.nodeDeletionTimeoutSeconds`
19
37
20
-
Note that these fields have changed their type to int32 and now expect a timeout expressed in seconds.
38
+
Note that these fields have changed their type from `*metav1.Duration`to `*int32` and now expect a timeout expressed in seconds.
21
39
22
40
The `RKE2ControlPlaneMachineTemplate` object in `v1beta2` now includes a `spec` field which is required.
23
41
24
-
The following `v1beta1``RKE2ControlPlaneStatus` fields have been moved under `RKE2ControlPlane.status.deprecated` in `v1beta2`:
42
+
The following `v1beta1``RKE2ControlPlaneStatus` fields have been moved under `RKE2ControlPlane.status.deprecated.v1beta1` in `v1beta2`:
25
43
-`conditions`
26
44
-`failureReason`
27
45
-`failureMessage`
@@ -40,4 +58,4 @@ The following `RKE2ControlPlaneStatus` fields have been removed from `v1beta2`:
40
58
-`updatedReplicas`
41
59
-`unavailableReplicas`
42
60
43
-
An RKE2 cluster is considered initialized when `RKE2ControlPlaneStatus.initialization.controlPlaneInitialized` is set to `true`.
61
+
An RKE2 cluster is considered initialized when `RKE2ControlPlaneStatus.initialization.controlPlaneInitialized` is set to `true`.
0 commit comments