Skip to content

Commit c15bfb8

Browse files
Documentation
1 parent 0ce9c36 commit c15bfb8

File tree

1 file changed

+57
-1
lines changed

1 file changed

+57
-1
lines changed

docs/book/src/developer/providers/migrations/v1.10-to-v1.11.md

Lines changed: 57 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@ proposal because most of the changes described below are a consequence of the wo
2222
* [MachineHealthCheck](#machinehealthcheck)
2323
* [ClusterClass](#clusterclass)
2424
* [KubeadmConfig](#kubeadmconfig)
25+
* [KubeadmConfigTemplate](#kubeadmconfigtemplate)
2526
* [KubeadmControlPlane](#kubeadmcontrolplane)
27+
* [KubeadmControlPlaneTemplate](#kubeadmcontrolplanetemplate)
28+
* [ClusterResourceSetBinding](#clusterresourcesetbinding)
2629
* [Cluster API Contract changes](#cluster-api-contract-changes)
2730
* [Contract rules for InfraCluster](#contract-rules-for-infracluster)
2831
* [Contract rules for InfraMachine](#contract-rules-for-inframachine)
@@ -182,16 +185,65 @@ proposal because most of the changes described below are a consequence of the wo
182185

183186
- KubeadmConfig (and the entire CABPK provider) now implements the v1beta2 Cluster API contract.
184187
- See changes that apply to [all CRDs](#all-crds)
185-
- The `spec.useExperimentalRetryJoin` field (deprecated in CAPI v1.2!) has been removed.
188+
- ExtraArg field types have been changed from `map[string]sting` to `[]Arg`, thus aligning with kubeadm v1beta4 API;
189+
however, using multiple args with the same name will be enabled only when v1beta1 is removed, tentatively tentatively in August 2026
190+
- `spec.clusterConfiguration.apiServer.extraArgs` type has been changed to `[]Arg`
191+
- `spec.clusterConfiguration.controllerManager.extraArgs` type has been changed to `[]Arg`
192+
- `spec.clusterConfiguration.scheduler.extraArgs` type has been changed to `[]Arg`
193+
- `spec.clusterConfiguration.etcd.local.nodeRegistration.extraArgs` type has been changed to `[]Arg`
194+
- `spec.initConfiguration.nodeRegistration.kubeletExtraArgs` type has been changed to `[]Arg`
195+
- `spec.joinConfiguration.nodeRegistration.kubeletExtraArgs` type has been changed to `[]Arg`
196+
- ImagePullPolicy field types have been changed from `string` to `corev1.PullPolicy`, thus aligning with kubeadm v1beta4 API
197+
- `spec.initConfiguration.nodeRegistration.imagePullPolicy` type has been changed to `corev1.PullPolicy`
198+
- `spec.joinConfiguration.nodeRegistration.imagePullPolicy` type has been changed to `corev1.PullPolicy`
199+
- Timeout fields have been aligned with kubeadm v1beta4 API, but filed name and type has been adapted according to API guidelines.
200+
- `spec.initConfiguration.timeouts` struct has been added with the following fields:
201+
- `controlPlaneComponentHealthCheckSeconds`
202+
- `kubeletHealthCheckSeconds`
203+
- `kubernetesAPICallSeconds`
204+
- `etcdAPICallSeconds`
205+
- `tlsBootstrapSeconds`
206+
- `discoverySeconds`
207+
- `spec.joinConfiguration.timeouts` field has been added with the same set of timeouts listed above.
208+
- `spec.clusterConfiguration.apiServer.timeoutForControlPlane` field has been removed. Use `spec.initConfiguration.timeouts.controlPlaneComponentHealthCheckSeconds` instead.
209+
- `spec.joinConfiguration.discovery.timeout` field has been removed. Use `spec.joinConfiguration.timeouts.tlsBootstrapSeconds` instead.
210+
- The `spec.useExperimentalRetryJoin` field (deprecated in CAPI v1.2!) has been removed.
186211
- Information about the initial provisioning process is now surfacing under the new `status.initialization` field.
187212
- `status.ready` has been replaced by `status.initialization.dataSecretCreated`
188213
- Support for terminal errors has been dropped (see [dataSecretCreated](#cluster-api-contract-changes)).
189214
- `status.failureReason` and `status.failureMessage` will continue to exist temporarily under `status.deprecated.v1beta1`.
215+
216+
### KubeadmConfigTemplate
217+
218+
KubeadmConfigTemplate `spcc.template.spec` has been aligned to changes in the [KubeadmConfig](#kubeadmconfig) `spcc` struct.
190219

191220
### KubeadmControlPlane
192221

193222
- KubeadmControlPlane (and the entire KCP provider) now implements the v1beta2 Cluster API contract.
194223
- See changes that apply to [all CRDs](#all-crds)
224+
- ExtraArg field types have been changed from `map[string]sting` to `[]Arg`, thus aligning with kubeadm v1beta4 API;
225+
however, using multiple args with the same name will be enabled only when v1beta1 is removed, tentatively tentatively in August 2026
226+
- `spec.kubeadmConfigSpec.clusterConfiguration.apiServer.extraArgs` type has been changed to `[]Arg`
227+
- `spec.kubeadmConfigSpec.clusterConfiguration.controllerManager.extraArgs` type has been changed to `[]Arg`
228+
- `spec.kubeadmConfigSpec.clusterConfiguration.scheduler.extraArgs` type has been changed to `[]Arg`
229+
- `spec.kubeadmConfigSpec.clusterConfiguration.etcd.local.nodeRegistration.extraArgs` type has been changed to `[]Arg`
230+
- `spec.kubeadmConfigSpec.initConfiguration.nodeRegistration.kubeletExtraArgs` type has been changed to `[]Arg`
231+
- `spec.kubeadmConfigSpec.joinConfiguration.nodeRegistration.kubeletExtraArgs` type has been changed to `[]Arg`
232+
- ImagePullPolicy field types have been changed from `string` to `corev1.PullPolicy`, thus aligning with kubeadm v1beta4 API
233+
- `spec.kubeadmConfigSpec.initConfiguration.nodeRegistration.imagePullPolicy` type has been changed to `corev1.PullPolicy`
234+
- `spec.kubeadmConfigSpec.joinConfiguration.nodeRegistration.imagePullPolicy` type has been changed to `corev1.PullPolicy`
235+
- Timeout fields have been aligned with kubeadm v1beta4 API, but filed name and type has been adapted according to API guidelines.
236+
- `spec.kubeadmConfigSpec.initConfiguration.timeouts` struct has been added with the following fields:
237+
- `controlPlaneComponentHealthCheckSeconds`
238+
- `kubeletHealthCheckSeconds`
239+
- `kubernetesAPICallSeconds`
240+
- `etcdAPICallSeconds`
241+
- `tlsBootstrapSeconds`
242+
- `discoverySeconds`
243+
- `spec.kubeadmConfigSpec.joinConfiguration.timeouts` field has been added with the same set of timeouts listed above.
244+
- `spec.kubeadmConfigSpec.clusterConfiguration.apiServer.timeoutForControlPlane` field has been removed. Use `spec.kubeadmConfigSpec.initConfiguration.timeouts.controlPlaneComponentHealthCheckSeconds` instead.
245+
- `spec.kubeadmConfigSpec.joinConfiguration.discovery.timeout` field has been removed. Use `spec.kubeadmConfigSpec.joinConfiguration.timeouts.tlsBootstrapSeconds` instead.
246+
- The `spec.kubeadmConfigSpec.useExperimentalRetryJoin` field (deprecated in CAPI v1.2!) has been removed.
195247
- Replica counters fields are now consistent with replica counters from other resources.
196248
- `status.replicas` was made a pointer and omitempty was added
197249
- `status.readyReplicas` has now a new semantic based on machine's `Ready` condition
@@ -204,6 +256,10 @@ proposal because most of the changes described below are a consequence of the wo
204256
- Support for terminal errors has been dropped.
205257
- `status.failureReason` and `status.failureMessage` will continue to exist temporarily under `status.deprecated.v1beta1`.
206258

259+
### KubeadmControlPlaneTemplate
260+
261+
KubeadmControlPlaneTemplate `spcc.template.spec` has been aligned to changes in the [KubeadmControlPlane](#kubeadmcontrolplane) `spcc` struct.
262+
207263
### ClusterResourceSetBinding
208264

209265
- Remove deprecated `ClusterResourceSetBinding.DeleteBinding` func

0 commit comments

Comments
 (0)