Repository navigation
OSAC-3548: Fix IsRestartComplete to wait for host to power on - #129
Conversation
|
@mennyaboush: This pull request references OSAC-3548 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the bug to target the "5.0.0" version, but no target version was set. 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 openshift-eng/jira-lifecycle-plugin repository. |
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
Walkthrough
ChangesRestart completion synchronization
Estimated code review effort: 3 (Moderate) | ~20 minutes Suggested reviewers: Sequence Diagram(s)sequenceDiagram
participant BareMetalInstance
participant Reconciler
participant Metal3Operator
BareMetalInstance->>Reconciler: Provide spec and status restart triggers
Reconciler->>Metal3Operator: Check restart completion
Metal3Operator-->>Reconciler: Return powered-on and annotation state
Reconciler-->>BareMetalInstance: Finalize matching restart or keep it in progress
🚥 Pre-merge checks | ✅ 11✅ Passed checks (11 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
6b33866 to
ea488a1
Compare
ad8aeb6 to
885908c
Compare
885908c to
0475d22
Compare
0de82ea to
7c32a7b
Compare
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
7c32a7b to
c002e12
Compare
c002e12 to
b3c36e3
Compare
b3c36e3 to
c3a6b6a
Compare
Two fixes for the restart_trigger race condition: 1. bare-metal-fulfillment-operator: IsRestartComplete now waits for the host to be powered on (bmh.Status.PoweredOn=true), not just for the reboot annotation to be removed. The BMH controller removes the annotation as soon as it sends the reboot command, before the host finishes rebooting. 2. fulfillment-service: Guard the restart_trigger echo on the operator having also echoed Status.RestartTrigger on the CR. A stale PowerSynced=True from before the operator processed the restart is no longer treated as restart completion. Fixes: https://redhat.atlassian.net/browse/OSAC-3548 Assisted-by: Claude Code <noreply@anthropic.com> Signed-off-by: MENNY ABOUSH <maboush@maboush-thinkpadt14gen5.raanaii.csb>
c3a6b6a to
1eee460
Compare
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: adriengentil, mennyaboush 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 |
…e-types-nav-list OSAC-3780: Add provider-admin instance type routing, nav, and list page
Summary
Fix BMI restart getting permanently stuck in Starting state. Cherry-picked from bare-metal-fulfillment-operator PR #83 (already merged in standalone repo).
Root Cause
The Metal3
IsRestartCompleteonly checked if the reboot annotation was removed, but the BMH controller removes it as soon as it sends the reboot command — before the host finishes rebooting. The operator declared restart complete while the host was still mid-reboot, leavingPowerSynced=False/Progressingstuck.Fix
Restart is complete only when the annotation is gone AND the host is back online (
bmh.Status.PoweredOn=true).Testing
Jira
OSAC-3548
Related
Assisted-by: Claude Code noreply@anthropic.com
Summary by CodeRabbit