fix(site-explorer): generate BF4 machine IDs from chassis serial#2903
Conversation
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (3)
🚧 Files skipped from review as they are similar to previous changes (3)
Summary by CodeRabbit
WalkthroughMachineId generation now falls back to a Bluefield_BMC chassis serial for DPUs when the system serial is absent. BlueField4 test support and integration coverage were added for this path. ChangesBlueField4 MachineId fallback
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
eea4ddb to
45c683b
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@crates/api-model/src/site_explorer/mod.rs`:
- Around line 886-901: Treat blank Redfish system serials as missing in
machine_id_serial_number before the BF4 fallback runs. Update the
self.systems.first().and_then(|system| system.serial_number.as_ref()) path to
also reject empty or whitespace-only values, matching the chassis serial
filtering used for Bluefield_BMC. Keep the fallback logic in
machine_id_serial_number and generate_machine_id() unchanged so BF4 reports with
blank system serials can still resolve via the chassis serial.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: c80c5434-d508-40ee-bf71-0bc3695073d3
📒 Files selected for processing (3)
crates/api-model/src/site_explorer/mod.rscrates/bmc-explorer/tests/bluefield4_explore.rscrates/bmc-mock/src/test_support/mod.rs
🔍 Container Scan Summary
Per-CVE detail lives in the per-service |
45c683b to
a5cb2b2
Compare
a5cb2b2 to
50a097b
Compare
Use the BlueField_BMC chassis serial as a DPU fallback when the Redfish system serial is absent, and add BF4 mock coverage for machine ID generation. Signed-off-by: Dmitry Porokh <dporokh@nvidia.com>
50a097b to
678715a
Compare
Use the BlueField_BMC chassis serial as a DPU fallback when the
Redfish system serial is absent, and add BF4 mock coverage for machine
ID generation.
Related issues
Type of Change
Breaking Changes
Testing
Additional Notes