Firmware update Trays
Authentication
Path parameters
Request
Optional subset of firmware targets to update within each matched tray.
Names are lowercase and select sub-parts of the tray
(BMC, BIOS, etc.). The accepted set per tray type comes from
the Flow service’s NICo proto bindings (which mirror Core’s
per-tray-type enums in NICo-core/crates/rpc/proto/forge.proto),
so the supported values track Core as new sub-parts are added:
- switch trays (NvSwitchComponent): currently bmc, cpld, bios, nvos
- powershelf trays (PowerShelfComponent): currently pmc, psu
- compute trays (ComputeTrayComponent): currently bmc, bios
(currently NOT honored end-to-end: the NICo compute-firmware
path goes through SetFirmwareUpdateTimeWindow + auto-update,
which has no per-target selection; the request is logged
and the whole bundle is applied. Will be honored once
compute moves to UpdateComponentFirmware.)
Omitted or empty means “update everything in the bundle”
(the historical default) for compute-tray-internal targets.
Unknown names are rejected. Requires
versionto be set. The special targetdpu, valid only on compute trays, requests DPU reprovisioning on each matched host. Unlike the other targets,dpuis NOT covered by the “omitted/empty means everything” default — it must be listed explicitly.versionis ignored on thedpubranch; the target firmware version comes from site configuration.
When true, proceed even if one or more target components (or hosts on the owning rack for rack-scoped components) are reported as not ready by their persisted status. Intended for operator-supervised maintenance.