-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Document nvme device status APIs #2734
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
📝 WalkthroughWalkthroughThe documentation for the Supervisor API was updated to include support for NVMe devices. This includes extending the Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant SupervisorAPI
Client->>SupervisorAPI: GET /host/info
SupervisorAPI-->>Client: Returns host info with nvme_devices list
Client->>SupervisorAPI: GET /host/nvme/<device>/status
SupervisorAPI-->>Client: Returns detailed NVMe device status
Client->>SupervisorAPI: GET /host/nvme/status
SupervisorAPI-->>Client: Returns NVMe datadisk status (if applicable)
Estimated code review effort🎯 2 (Simple) | ⏱️ ~7 minutes Note ⚡️ Unit Test Generation is now available in beta!Learn more here, or try it out under "Finishing Touches" below. 📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (2)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
✨ Finishing Touches🧪 Generate unit tests
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (3)
docs/api/supervisor/models.md (1)
361-364: Tighten wording for clarity and consistency“Unique UUID” is redundant (the “U” already stands for unique). Consider re-phrasing and adding the definite article for readability.
-| id | string | Unique UUID for the device | +| id | string | UUID (unique identifier) for the device | -| path | string | Device path on host system (e.g. `/dev/nvme0n1`) | +| path | string | Device path on the host system (e.g. `/dev/nvme0n1`) |docs/api/supervisor/endpoints.md (2)
1924-1942: Typos & unit wording in returned-data tableSeveral minor wording issues slipped in:
- temperature_kelvin | int | Current temperature in Kelvins calculated from sensors + temperature_kelvin | int | Current temperature in Kelvin calculated from sensors - warning_temp_minutes | int | Minutes temperature has been greater then warning threshold over device lifetime - critical_composite_temp_minutes | int | Minutes temperature has been greater then critical composite threshold over device lifetime + warning_temp_minutes | int | Minutes temperature has been greater than the warning threshold over device lifetime + critical_composite_temp_minutes | int | Minutes temperature has been greater than the critical composite threshold over device lifetimeDiff applies only to this table.
1924-1942: Consider including an example responseMost complex endpoints in this file provide an example JSON response. Adding one here would help integrators validate their parsing logic quickly.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting
📒 Files selected for processing (2)
docs/api/supervisor/endpoints.md(3 hunks)docs/api/supervisor/models.md(1 hunks)
🔇 Additional comments (1)
docs/api/supervisor/endpoints.md (1)
1696-1697: Broken (or future) anchor – verify that#nvme-deviceexists
[NVMe devices](api/supervisor/models.md#nvme-device)assumes an anchor namednvme-deviceinmodels.md.
If that anchor is missing (or is spelled differently), every rendered link on this page will 404.
Please double-check and align the anchor (or update the link).
5aad8bf to
fa49da0
Compare
| | placeholder | description | | ||
| | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | ||
| | addon | The slug for the addon, to get the slug you can call `/addons`, to call endpoints for the add-on calling the endpoints you can use `self`as the slug. | | ||
| | placeholder | description | | ||
| | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | | ||
| | addon | The slug for the addon, to get the slug you can call `/addons`, to call endpoints for the add-on calling the endpoints you can use `self` as the slug. | | ||
| | application | The name of an application, call `/audio/info` to get the correct name | | ||
| | interface | A valid interface name, example `eth0`, to get the interface name you can call `/network/info`. You can use `default` to get the primary interface | | ||
| | registry | A registry hostname defined in the container registry configuration, to get the hostname you can call `/docker/registries` | | ||
| | service | The service name for a service on the host. | | ||
| | backup | A valid backup slug, example `skuwe823`, to get the slug you can call `/backups` | | ||
| | suggestion | A valid suggestion, example `clear_full_backup`, to get the suggestion you can call `/resolution` | | ||
| | uuid | The UUID of a discovery service, to get the UUID you can call `/discovery` | | ||
| | backup | A valid backup slug, example `skuwe823`, to get the slug you can call `/backups` | | ||
| | bootid | An identifier for a specific boot of host system or an integer offset from the current boot. See `/host/logs/boots/<bootid>` for more details | | ||
| | check | The slug for a check in Supervisor's resolution manager, call `/resolution/info` to see the list of options in the `checks` field | | ||
| | device | A UUID or device path for an NVMe device available on the host, call `/host/info` to get a list of options in the `nvme_devices` field | | ||
| | identifier | A syslog identifier from systemd journal, call `/host/logs/identifiers` to get a complete list of options | | ||
| | interface | A valid interface name, example `eth0`, to get the interface name you can call `/network/info`. You can use `default` to get the primary interface | | ||
| | mount | Name of a mount that exists in Supervisor, call `/mounts` to get a list of options | | ||
| | registry | A registry hostname defined in the container registry configuration, to get the hostname you can call `/docker/registries` | | ||
| | respository | The slug for a respository in Supervisor's add-on store, call `/store/repositories` to get a list of options | | ||
| | service | The service name for a service on the host, call `/host/services` to get a list of options | | ||
| | suggestion | A valid suggestion, example `clear_full_backup`, to get the suggestion you can call `/resolution` | | ||
| | uuid | The UUID of a discovery service, to get the UUID you can call `/discovery` | | ||
| | vlan | The id for a vlan network device in network manager on the host. Should be an integer | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I legitimately had no idea this section existed so I hadn't been updating it, CodeRabbit alerted me to it 😆
I added the new placeholder but also combed through to find any others that should've been added by recent PRs and weren't. I can split this to a new PR if we want but it didn't seem to bloat it too much so figured it was fine.
|
Changing approach in parent PR, no API changes required. Closing this |
Proposed change
Document new APIs for NVMe status added in home-assistant/supervisor#6035
Type of change
Checklist
Additional information
Summary by CodeRabbit
/host/infoendpoint.