mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-09 18:26:30 +00:00
Add network to host suppported features (#1973)
This commit is contained in:
parent
bd1450a682
commit
7a5a01bdcc
@ -338,12 +338,6 @@ PRIVILEGED_ALL = [
|
||||
PRIVILEGED_DAC_READ_SEARCH,
|
||||
]
|
||||
|
||||
FEATURES_SHUTDOWN = "shutdown"
|
||||
FEATURES_REBOOT = "reboot"
|
||||
FEATURES_HASSOS = "hassos"
|
||||
FEATURES_HOSTNAME = "hostname"
|
||||
FEATURES_SERVICES = "services"
|
||||
|
||||
ROLE_DEFAULT = "default"
|
||||
ROLE_HOMEASSISTANT = "homeassistant"
|
||||
ROLE_BACKUP = "backup"
|
||||
@ -403,3 +397,14 @@ class LogLevel(str, Enum):
|
||||
WARNING = "warning"
|
||||
ERROR = "error"
|
||||
CRITICAL = "critical"
|
||||
|
||||
|
||||
class HostFeature(str, Enum):
|
||||
"""Host feature."""
|
||||
|
||||
HASSOS = "hassos"
|
||||
HOSTNAME = "hostname"
|
||||
NETWORK = "network"
|
||||
REBOOT = "reboot"
|
||||
SERVICES = "services"
|
||||
SHUTDOWN = "shutdown"
|
||||
|
@ -2,13 +2,7 @@
|
||||
from contextlib import suppress
|
||||
import logging
|
||||
|
||||
from ..const import (
|
||||
FEATURES_HASSOS,
|
||||
FEATURES_HOSTNAME,
|
||||
FEATURES_REBOOT,
|
||||
FEATURES_SERVICES,
|
||||
FEATURES_SHUTDOWN,
|
||||
)
|
||||
from ..const import HostFeature
|
||||
from ..coresys import CoreSys, CoreSysAttributes
|
||||
from ..exceptions import HassioError, PulseAudioError
|
||||
from .apparmor import AppArmorControl
|
||||
@ -71,13 +65,18 @@ class HostManager(CoreSysAttributes):
|
||||
features = []
|
||||
|
||||
if self.sys_dbus.systemd.is_connected:
|
||||
features.extend([FEATURES_REBOOT, FEATURES_SHUTDOWN, FEATURES_SERVICES])
|
||||
features.extend(
|
||||
[HostFeature.REBOOT, HostFeature.SHUTDOWN, HostFeature.SERVICES]
|
||||
)
|
||||
|
||||
if self.sys_dbus.network.is_connected:
|
||||
features.append(HostFeature.NETWORK)
|
||||
|
||||
if self.sys_dbus.hostname.is_connected:
|
||||
features.append(FEATURES_HOSTNAME)
|
||||
features.append(HostFeature.HOSTNAME)
|
||||
|
||||
if self.sys_hassos.available:
|
||||
features.append(FEATURES_HASSOS)
|
||||
features.append(HostFeature.HASSOS)
|
||||
|
||||
return features
|
||||
|
||||
|
11
tests/host/test_supported_features.py
Normal file
11
tests/host/test_supported_features.py
Normal file
@ -0,0 +1,11 @@
|
||||
"""Test supported features."""
|
||||
# pylint: disable=protected-access
|
||||
|
||||
|
||||
def test_supported_features(coresys):
|
||||
"""Test host features."""
|
||||
assert "network" in coresys.host.supported_features
|
||||
|
||||
coresys._dbus.network.is_connected = False
|
||||
|
||||
assert "network" not in coresys.host.supported_features
|
Loading…
x
Reference in New Issue
Block a user