New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bubble reconcile control plane reconcile failure to cluster status #7745
base: main
Are you sure you want to change the base?
Bubble reconcile control plane reconcile failure to cluster status #7745
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Skipping CI for Draft Pull Request. |
/test all |
ade054e
to
3a533f4
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #7745 +/- ##
==========================================
+ Coverage 73.48% 73.63% +0.14%
==========================================
Files 579 588 +9
Lines 36357 37187 +830
==========================================
+ Hits 26718 27383 +665
- Misses 7875 8015 +140
- Partials 1764 1789 +25 ☔ View full report in Codecov by Sentry. |
3a533f4
to
83152c5
Compare
/hold |
Issue #, if available:
Description of changes:
We encountered an issue where the upgrade finished because the failure in the controller wasn’t bubbled up to the status. Making these changes would have caught it, causing the upgrade to fail correctly. There are other phases in the controller reconciliation where we’d need this as well, but for now I only did it for the control plane reconciliation phase.
In the PR, we set the failure message in the reconciliation phase where the error occures, and then clear it right after. This is because we don't want the failure message to persist for too long, especially if the next reconciliation phase returns a re-queue signal and lasts a while (and essentially waiting for some state to be met)
Testing (if applicable):
TestVSphereKubernetes128BottlerocketTo129StackedEtcdUpgrade
test with the controller build that encounters an error during control plane reconciliationCluster with
failureMessage
andfailureReason
Documentation added/planned (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.