diff --git a/aiohasupervisor/models/__init__.py b/aiohasupervisor/models/__init__.py index 8f3c610..1a3614b 100644 --- a/aiohasupervisor/models/__init__.py +++ b/aiohasupervisor/models/__init__.py @@ -8,6 +8,7 @@ AddonsSecurityOptions, AddonsStats, AddonStage, + AddonStartup, AddonState, AddonsUninstall, AppArmor, @@ -132,6 +133,7 @@ "RootInfo", "AvailableUpdate", "AddonStage", + "AddonStartup", "AddonBoot", "AddonBootConfig", "CpuArch", diff --git a/aiohasupervisor/models/addons.py b/aiohasupervisor/models/addons.py index b7ae168..67293c9 100644 --- a/aiohasupervisor/models/addons.py +++ b/aiohasupervisor/models/addons.py @@ -99,6 +99,16 @@ class AddonState(StrEnum): ERROR = "error" +class AddonStartup(StrEnum): + """AddonStartup type.""" + + APPLICATION = "application" + INITIALIZE = "initialize" + ONCE = "once" + SERVICES = "services" + SYSTEM = "system" + + # --- OBJECTS ---- @@ -232,6 +242,7 @@ class InstalledAddonComplete( udev: bool video: bool audio: bool + startup: AddonStartup services: list[str] discovery: list[str] translations: dict[str, Any] diff --git a/tests/test_addons.py b/tests/test_addons.py index e17e04f..1c89a98 100644 --- a/tests/test_addons.py +++ b/tests/test_addons.py @@ -11,6 +11,7 @@ AddonsOptions, AddonsSecurityOptions, AddonStage, + AddonStartup, AddonState, AddonsUninstall, Capability, @@ -64,6 +65,7 @@ async def test_addons_info( assert addon.supervisor_role == SupervisorRole.MANAGER assert addon.system_managed is False assert addon.system_managed_config_entry is None + assert addon.startup == AddonStartup.SERVICES async def test_addons_uninstall(