Description
What would you like to be added (User Story)?
As a user, I want to be able to create clusters with kubeadm 1.31 (which most probably is going to use v1beta4 API)
As a user, I want to be able to use latest and greatest introduced by kubeadm v1beta4 API
rif kubernetes/kubernetes#125029
Action Plan
Mandatory tasks to support Kubernetes v1.31:
- Implements conversions from CAPI v1beta1 types to kubeadm v1beta4 ✨ Add kubeadm v1beta4 types #10709
- Special handling should be implemented for ClusterConfiguration.TimeoutForControlPlane and JoinConfiguration.Discovery.Timeout
Optional non breaking changes to be implemented ASAP:
- Before adding new fields, check potential impacts on things like , also ClusterClass and topology reconcile ✨ Add ExtraEnvs and ImagePullSerial to KubeadmConfig #10846
- Add ClusterConfiguration.*.ExtraEnvs ✨ Add ExtraEnvs and ImagePullSerial to KubeadmConfig #10846
- Add Init/JoinConfiguration.NodeRegistrationOptions.ImagePullSerial ✨ Add ExtraEnvs and ImagePullSerial to KubeadmConfig #10846
- Add Init/JoinConfiguration.Timeout: ⚠️ Align KubeadmConfig to kubeadm v1beta4 types #12282
- Important: Timeout.ControlPlaneComponentHealthCheck and Timeout.TLSBootstrap must not be added now to ensure a clean migration of ClusterConfiguration.TimeoutForControlPlane and JoinConfiguration.Discovery.Timeout when we introduce CAPI v1beta2 types
Changes deferred to when we implemening CAPI v1beta2 types
- Refactor ClusterConfiguration.*.ExtraArgs and Init/JoinConfiguration.NodeRegistrationOptions.KubeletExtraArgs ⚠️ Align KubeadmConfig to kubeadm v1beta4 types #12282
- Add Timeout.ControlPlaneComponentHealthCheck and Timeout.TLSBootstrap and remove ClusterConfiguration.TimeoutForControlPlane and JoinConfiguration.Discovery.Timeout ⚠️ Align KubeadmConfig to kubeadm v1beta4 types #12282
- change type for ImagePullPolicy ⚠️ Align KubeadmConfig to kubeadm v1beta4 types #12282
Changes deferred to when we review certificate management / renewal --> #12289
Changes deferred to when we review kubeadm/KCP addon management --> #12288
Changes deferred to when we implement EncryptionAlgorithm for certificates -> #10077
Label(s) to be applied
/kind feature