Update Rack-Firmware to use RMS UpdateFirmwareByDeviceList API#843
Update Rack-Firmware to use RMS UpdateFirmwareByDeviceList API#843anunna0 wants to merge 14 commits intoNVIDIA:mainfrom
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. |
🔐 TruffleHog Secret Scan✅ No secrets or credentials found! Your code has been scanned for 700+ types of secrets and credentials. All clear! 🎉 🕐 Last updated: 2026-04-08 18:17:25 UTC | Commit: bcc738c |
|
It was decided one month ago that single-rack sequences such as FW update need to be fully moved into RMS itself. Core should not have rack sequences for power control or FW update. This file was to be removed or reduced to empty. |
…ith Machine.bmc_info, fixed lint errors
Currently, the parsing of SOT firmware specifications happens inside of NCX, so we must build the request with the device list, targets, and firmware blobs in this module. Going forward in the next release of RMS (0.8.0), we are planning on moving this SOT parsing workflow into RMS which will allow us to simplify this file significantly. Still in the current implementation RMS takes care of the update with one API call and handles the sequencing and ordering of the updates on its own. |
Ok thanks for that. |
crates/api/src/site_explorer/mod.rs
Outdated
| }), | ||
| host_endpoint: None, | ||
| }; | ||
| if let Err(e) = rms::add_node_to_rms(rms_client.as_ref(), new_node_info).await { |
There was a problem hiding this comment.
this need to be depricated
| // Load devices for this rack from the database. All DB work is done upfront | ||
| // so connections are dropped before async credential lookups and the RMS call | ||
| // (avoids txn-held-across-await). | ||
| let machine_search = model::machine::machine_search_config::MachineSearchConfig { |
There was a problem hiding this comment.
We shouldent be doing rack f/w update through admin cli by directly contacting RMS.
It will be through rack state machine interception
There was a problem hiding this comment.
Admin CLI is not directly contacting RMS for firmware update. Right now it is routed through core, but not through the state machine. The update to route it through state machine will in a follow up PR.
There was a problem hiding this comment.
this is interepting state machine code.
There was a problem hiding this comment.
Are you saying to remove the rack-firmware apply command and rely on the maintenance command from that PR to do the update?
Signed-off-by: Abhiram Nunna <33299190+anunna0@users.noreply.github.com>
Description
Replaces the 'UpdateFirmwareByNodeTypeAsync' call to RMS with the usage of the 'UpdateFirmwareByDeviceList' API. This is to support the upcoming state machine integration of rack-firmware upgrades.
Type of Change
Related Issues (Optional)
Breaking Changes
Testing
Additional Notes
This PR is pending hardware access for testing.