Skip to content

Commit 664282f

Browse files
fwieselnotandy
authored andcommitted
Onboarding: Only reset ones own readiness summary
When onboarding aborts, it means usually that another controller will take over, so we better do not remove its summary (i.e. during scaledown).
1 parent acfc409 commit 664282f

File tree

1 file changed

+14
-6
lines changed

1 file changed

+14
-6
lines changed

internal/controller/onboarding_controller.go

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -152,12 +152,20 @@ func (r *OnboardingController) abortOnboarding(ctx context.Context, hv *kvmv1.Hy
152152
return nil
153153
}
154154

155-
changed := meta.SetStatusCondition(&hv.Status.Conditions, metav1.Condition{
156-
Type: kvmv1.ConditionTypeReady,
157-
Status: metav1.ConditionFalse,
158-
Reason: ConditionReasonOnboarding,
159-
Message: "Onboarding aborted",
160-
})
155+
changed := false
156+
ready := meta.FindStatusCondition(hv.Status.Conditions, kvmv1.ConditionTypeReady)
157+
if ready != nil {
158+
// Only undo ones own readiness status reporting
159+
if ready.Reason == ConditionReasonOnboarding {
160+
meta.SetStatusCondition(&hv.Status.Conditions, metav1.Condition{
161+
Type: kvmv1.ConditionTypeReady,
162+
Status: metav1.ConditionFalse,
163+
Reason: ConditionReasonOnboarding,
164+
Message: "Onboarding aborted",
165+
})
166+
changed = true
167+
}
168+
}
161169

162170
if meta.SetStatusCondition(&hv.Status.Conditions, metav1.Condition{
163171
Type: ConditionTypeOnboarding,

0 commit comments

Comments
 (0)