Skip to content

Commit df5f42a

Browse files
committed
Add support for reloading of YAML configuration
This allows users to hot reload the configuration through Developer Tools rather than having to fully restart Home Assistant in order for changes to be reflected.
1 parent 5dd6d25 commit df5f42a

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

custom_components/prometheus_sensor/__init__.py

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,30 @@
1+
from __future__ import annotations
2+
13
from dataclasses import dataclass
24
import logging
3-
from typing import Final, Optional
5+
from typing import TYPE_CHECKING, Final, Optional
46
from urllib.parse import urljoin
57

68
import aiohttp
79

810
from homeassistant.const import STATE_PROBLEM, STATE_UNKNOWN
11+
from homeassistant.helpers.reload import async_setup_reload_service
12+
13+
if TYPE_CHECKING:
14+
from homeassistant.core import HomeAssistant
15+
from homeassistant.helpers.typing import ConfigType
16+
17+
from .const import DOMAIN, PLATFORMS
918

1019
_LOGGER: Final = logging.getLogger(__name__)
1120

1221

22+
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
23+
"""Set up the prometheus-sensor integration."""
24+
await async_setup_reload_service(hass, DOMAIN, PLATFORMS)
25+
return True
26+
27+
1328
@dataclass(frozen=True)
1429
class QueryResult:
1530
value: Optional[float] = None

custom_components/prometheus_sensor/const.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
from datetime import timedelta
22
from typing import Final
33

4+
DOMAIN = "prometheus_sensor"
5+
PLATFORMS = ["binary_sensor", "sensor"]
6+
47
# Match the default scrape_interval in Prometheus
58
SCAN_INTERVAL: Final = timedelta(seconds=15)
69

0 commit comments

Comments
 (0)