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
Improve pause handling implementation on the controllers (#460)
### Description
Cluster-API version (>=1.9.5) incorporated a [fix](kubernetes-sigs/cluster-api#11814) for a [race condition](kubernetes-sigs/cluster-api#11812) in their clusterctl move logic. Currently, during a cluster move operation, CAPT controllers interpret the temporary absence of TinkerbellMachine CRDs in the source cluster as a deletion event. This triggers power-off jobs, potentially causing catastrophic effects for users, when in reality the resources are just being moved from source to target cluster.
This PR implements proper pause handling in both cluster and machine controllers to prevent unwanted reconciliation during cluster move operations. When a CAPI cluster is paused:
- Controllers check for pause annotations before proceeding with reconciliation
- Reconciliation is halted if pause is detected
## Why is this needed
Fixes: #
## How Has This Been Tested?
Tested with a custom built controller and moving the CRs back and forth using clusterctl move.
## How are existing users impacted? What migration steps/scripts do we need?
## Checklist:
I have:
- [ ] updated the documentation and/or roadmap (if required)
- [ ] added unit or e2e tests
- [ ] provided instructions on how to upgrade
0 commit comments