Skip to content

Conversation

steffen-karlsson
Copy link

Upgrading the cluster-api version from v1.10.4 to v1.11.1

@github-project-automation github-project-automation bot moved this to To Do in Planning Sep 15, 2025
@talos-bot talos-bot moved this from To Do to In Review in Planning Sep 15, 2025
@steffen-karlsson steffen-karlsson changed the title feat: upgrading to CAPI v1.11.x feat: upgrade to CAPI v1.11.x Sep 15, 2025
@steffen-karlsson steffen-karlsson force-pushed the feat/capi-one-eleven-one branch 4 times, most recently from 6ffe030 to 3f13a66 Compare September 15, 2025 13:20
Upgrading the `cluster-api` version from `v1.10.4` to `v1.11.1` with underlying changes to Talos specific configs, same logic as before.

Signed-off-by: Steffen Karlsson <[email protected]>
@steffen-karlsson
Copy link
Author

The conform/commit/gpg-identity does not support Signed-off-by, looks like from source code that it needs to be Signed-by: https://github.com/siderolabs/conform/blob/main/internal/policy/commit/check_gpg_identity.go#L40

image

@steffen-karlsson
Copy link
Author

Working on a similar PR for https://github.com/siderolabs/cluster-api-control-plane-provider-talos, but as Control Plane Provider is depending on Bootstrap Provider, it cannot be completed, before this one is merged and release due to incompatibility of cluster-api version.

@smira
Copy link
Member

smira commented Sep 16, 2025

I really appreciate your effort, but this would make CABPT incompatible with CAPI core <= 1.11, so we need to take this slowly.

@steffen-karlsson
Copy link
Author

I really appreciate your effort, but this would make CABPT incompatible with CAPI core <= 1.11, so we need to take this slowly.

I understand @smira, do you rather want to evolve the api version to i.e. v1alpha4 for talosconfig_types.go to keep it backwards compatible?

@smira
Copy link
Member

smira commented Sep 16, 2025

I really appreciate your effort, but this would make CABPT incompatible with CAPI core <= 1.11, so we need to take this slowly.

I understand @smira, do you rather want to evolve the api version to i.e. v1alpha4 for talosconfig_types.go to keep it backwards compatible?

No, I don't think we need to change CABPT CRDs, I mean the following:

  • if CABPT is using CAPI <= 1.10 CRDs, it is compatible with any CAPI 1.x
  • if CABPT is using CAPI >= 1.11 CRDs, it is only compatible with CAPI 1.11+

@steffen-karlsson
Copy link
Author

  • if CABPT is using CAPI <= 1.10 CRDs, it is compatible with any CAPI 1.x

I'm not sure thats the case, at least what we have observed and tested so far.
We were running on 1.10.4 and has been upgrading to 1.11.1 due to other infrastructure dependencies.

Unfortunately we see that bootstrap and control plane provider are no longer working and this is because of breaking changes in cluster-api with regards to fuzzer among other components.

Example:
v1.10.6: https://github.com/kubernetes-sigs/cluster-api/blob/v1.10.6/util/conversion/conversion.go#L32
v1.11.1: https://github.com/kubernetes-sigs/cluster-api/blob/v1.11.1/util/conversion/conversion.go#L28

Those two are incompatible and it does not work to do a in-place replacement for that dependency as you can do for github.com/google/cel-go as you're having currenty.

Please let me know what you think @smira

@smira
Copy link
Member

smira commented Sep 16, 2025

What exactly is not the case? CAPI 1.x should have backwards compatibility

@steffen-karlsson
Copy link
Author

What exactly is not the case? CAPI 1.x should have backwards compatibility

From a programming perspective, cluster-api-bootstrap-provider-talos and cluster-api-control-plane-provider-talos is not compatible with cluster-api v1.11.1, because of underlying changes in kubernetes i.e. apimachinery.

@smira
Copy link
Member

smira commented Sep 16, 2025

What exactly is not the case? CAPI 1.x should have backwards compatibility

From a programming perspective, cluster-api-bootstrap-provider-talos and cluster-api-control-plane-provider-talos is not compatible with cluster-api v1.11.1, because of underlying changes in kubernetes i.e. apimachinery.

This is source code compatibility, not API-level.

@steffen-karlsson
Copy link
Author

What exactly is not the case? CAPI 1.x should have backwards compatibility

From a programming perspective, cluster-api-bootstrap-provider-talos and cluster-api-control-plane-provider-talos is not compatible with cluster-api v1.11.1, because of underlying changes in kubernetes i.e. apimachinery.

This is source code compatibility, not API-level.

Yes sorry, should have been more specific on source code compatibility.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Review
Development

Successfully merging this pull request may close these issues.

2 participants