🐛 MachineSet/KCP: Preserve existing object names for backward compatibility with pre-v1.7 in-place updates#13124
Conversation
…lity with pre-v1.7 in-place updates Prior to Cluster API v1.7, infraMachine and bootstrapConfig objects created by MachineSet and KubeadmControlPlane could have names that differed from their associated Machine names. Starting from v1.7 (kubernetes-sigs#9833), these objects consistently use the Machines name. When performing in-place updates on Machines created before v1.7, we must preserve the existing infraMachine and bootstrapConfig names to avoid breaking associations with existing infrastructure resources. This commit ensures backward compatibility by preserving existing bootstrapConfig names in computeDesiredBootstrapConfig and existing infraMachine names in computeDesiredInfraMachine.
|
Hi @liuxu623. Thanks for your PR. I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/assign fabriziopandini |
|
@liuxu623 thanks for this PR |
|
/retest |
|
LGTM label has been added. DetailsGit tree hash: c926d67aab3c1a6c21e7bf70356a59cd2b5590d3 |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: fabriziopandini The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/cherry-pick release-1.12 |
|
@fabriziopandini: once the present PR merges, I will cherry-pick it on top of DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/retest |
|
/test pull-cluster-api-test-main |
|
/retest |
|
/test pull-cluster-api-e2e-blocking-main |
|
/retest |
|
/test pull-cluster-api-e2e-blocking-main |
1 similar comment
|
/test pull-cluster-api-e2e-blocking-main |
|
@liuxu623: Cannot trigger testing until a trusted user reviews the PR and leaves an DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/test pull-cluster-api-e2e-blocking-main |
|
@fabriziopandini: new pull request created: #13147 DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
Nice fix, thx! /lgtm |
What this PR does / why we need it:
Prior to Cluster API v1.7, infraMachine and bootstrapConfig objects created by MachineSet and KubeadmControlPlane could have names that differed from their associated Machine names. Starting from v1.7 (#9833), these objects consistently use the Machines name.
When performing in-place updates on Machines created before v1.7, we must preserve the existing infraMachine and bootstrapConfig names to avoid breaking associations with existing infrastructure resources.
This commit ensures backward compatibility by preserving existing bootstrapConfig names in computeDesiredBootstrapConfig and existing infraMachine names in computeDesiredInfraMachine.
Part of #12291
/area machineset
/area provider/control-plane-kubeadm