"""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 BOARD_NAME = "Home Assistant Yellow" MANUFACTURER = "homeassistant" MODEL = "yellow" @callback def async_info(hass: HomeAssistant) -> 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 return HardwareInfo( board=BoardInfo( hassio_board_id=board, manufacturer=MANUFACTURER, model=MODEL, revision=None, ), name=BOARD_NAME, url=None, )