oxidecomputer / oxidecomputer/omicron

fm: want power shelf PSU inventory in the external API

Open
#11,047 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

api fault-management
Dominant language
Rust
Stars
572
Forks
97
Avg merge
2d 12h
Merged PRs (30d)
96

Description

Once we have external API endpoints for listing/viewing PSCs (#11045), we should also have a way to publicly reference the inventory of PSUs in each power shelf. Looking at existing APIs for reference, I notice that physical disks can either be queried as a list of all physical disks or as a list of physical disks attached to a given sled, so we might want to do something similar for rectifiers.

The API model for a PSU should include at least:

  • a stable UUID that uniquely identifies that PSU
  • the PSU's VPD (this will require oxidecomputer/hubris#2212 so that we can actually inventory PSU VPD from the PSC)
  • its physical slot within the power shelf
  • which power shelf it is in (either by referencing the PSC by UUID, by explicitly saying the shelf number, or both?)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository files or tests are named. Start by reviewing issue #11045 and the linked physical-disk API examples, then check the Hubris dependency #2212 for PSU VPD inventory; the work is done when the external API exposes PSU UUID, VPD, physical slot, and power-shelf association.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, backend-api-design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.