hass-core/homeassistant/components/homeassistant_yellow/hardware.py
Erik Montnemery 80caeafcb5
Add documentation URL for homeassistant_yellow (#99336)
* Add documentation URL for homeassistant_yellow

* Fix test

* Tweak
2023-08-31 10:50:53 -04:00

45 lines
1.3 KiB
Python

"""The Home Assistant Yellow hardware platform."""
from __future__ import annotations
from homeassistant.components.hardware.models import BoardInfo, HardwareInfo
from homeassistant.components.hassio import get_os_info
from homeassistant.core import HomeAssistant, callback
from homeassistant.exceptions import HomeAssistantError
from .const import DOMAIN
BOARD_NAME = "Home Assistant Yellow"
DOCUMENTATION_URL = "https://yellow.home-assistant.io/documentation/"
MANUFACTURER = "homeassistant"
MODEL = "yellow"
@callback
def async_info(hass: HomeAssistant) -> list[HardwareInfo]:
"""Return board info."""
if (os_info := get_os_info(hass)) is None:
raise HomeAssistantError
board: str | None
if (board := os_info.get("board")) is None:
raise HomeAssistantError
if not board == "yellow":
raise HomeAssistantError
config_entries = [
entry.entry_id for entry in hass.config_entries.async_entries(DOMAIN)
]
return [
HardwareInfo(
board=BoardInfo(
hassio_board_id=board,
manufacturer=MANUFACTURER,
model=MODEL,
revision=None,
),
config_entries=config_entries,
dongle=None,
name=BOARD_NAME,
url=DOCUMENTATION_URL,
)
]