mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-25 18:16:32 +00:00
Fix lint (#1284)
This commit is contained in:
parent
02d4045ec3
commit
db9d0f2639
@ -351,7 +351,7 @@ class Addon(AddonModel):
|
|||||||
options = self.options
|
options = self.options
|
||||||
|
|
||||||
try:
|
try:
|
||||||
schema(options)
|
options = schema(options)
|
||||||
write_json_file(self.path_options, options)
|
write_json_file(self.path_options, options)
|
||||||
except vol.Invalid as ex:
|
except vol.Invalid as ex:
|
||||||
_LOGGER.error(
|
_LOGGER.error(
|
||||||
|
@ -356,6 +356,8 @@ def _single_validate(coresys, typ, value, key):
|
|||||||
if str(value).startswith("!secret "):
|
if str(value).startswith("!secret "):
|
||||||
secret: str = value.partition(" ")[2]
|
secret: str = value.partition(" ")[2]
|
||||||
value = coresys.secrets.get(secret)
|
value = coresys.secrets.get(secret)
|
||||||
|
if value is None:
|
||||||
|
raise vol.Invalid(f"Unknown secret {secret}")
|
||||||
|
|
||||||
# parse extend data from type
|
# parse extend data from type
|
||||||
match = RE_SCHEMA_ELEMENT.match(typ)
|
match = RE_SCHEMA_ELEMENT.match(typ)
|
||||||
|
@ -269,7 +269,9 @@ class APIAddons(CoreSysAttributes):
|
|||||||
addon_schema = SCHEMA_OPTIONS.extend(
|
addon_schema = SCHEMA_OPTIONS.extend(
|
||||||
{vol.Optional(ATTR_OPTIONS): vol.Any(None, addon.schema)}
|
{vol.Optional(ATTR_OPTIONS): vol.Any(None, addon.schema)}
|
||||||
)
|
)
|
||||||
body: Dict[str, Any] = await api_validate(addon_schema, request)
|
body: Dict[str, Any] = await api_validate(
|
||||||
|
addon_schema, request, origin=[ATTR_OPTIONS]
|
||||||
|
)
|
||||||
|
|
||||||
if ATTR_OPTIONS in body:
|
if ATTR_OPTIONS in body:
|
||||||
addon.options = body[ATTR_OPTIONS]
|
addon.options = body[ATTR_OPTIONS]
|
||||||
|
@ -161,7 +161,9 @@ class APISupervisor(CoreSysAttributes):
|
|||||||
@api_process
|
@api_process
|
||||||
def reload(self, request: web.Request) -> Awaitable[None]:
|
def reload(self, request: web.Request) -> Awaitable[None]:
|
||||||
"""Reload add-ons, configuration, etc."""
|
"""Reload add-ons, configuration, etc."""
|
||||||
return asyncio.shield(self.sys_updater.reload())
|
return asyncio.shield(
|
||||||
|
asyncio.wait([self.sys_updater.reload(), self.sys_secrets.reload()])
|
||||||
|
)
|
||||||
|
|
||||||
@api_process
|
@api_process
|
||||||
def repair(self, request: web.Request) -> Awaitable[None]:
|
def repair(self, request: web.Request) -> Awaitable[None]:
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
"""Init file for Hass.io util for RESTful API."""
|
"""Init file for Hass.io util for RESTful API."""
|
||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
from typing import Optional, List
|
||||||
|
|
||||||
from aiohttp import web
|
from aiohttp import web
|
||||||
import voluptuous as vol
|
import voluptuous as vol
|
||||||
@ -89,12 +90,22 @@ def api_return_ok(data=None):
|
|||||||
return web.json_response({JSON_RESULT: RESULT_OK, JSON_DATA: data or {}})
|
return web.json_response({JSON_RESULT: RESULT_OK, JSON_DATA: data or {}})
|
||||||
|
|
||||||
|
|
||||||
async def api_validate(schema, request):
|
async def api_validate(
|
||||||
|
schema: vol.Schema, request: web.Request, origin: Optional[List[str]] = None
|
||||||
|
):
|
||||||
"""Validate request data with schema."""
|
"""Validate request data with schema."""
|
||||||
data = await request.json(loads=json_loads)
|
data = await request.json(loads=json_loads)
|
||||||
try:
|
try:
|
||||||
data = schema(data)
|
data_validated = schema(data)
|
||||||
except vol.Invalid as ex:
|
except vol.Invalid as ex:
|
||||||
raise APIError(humanize_error(data, ex)) from None
|
raise APIError(humanize_error(data, ex)) from None
|
||||||
|
|
||||||
return data
|
if not origin:
|
||||||
|
return data_validated
|
||||||
|
|
||||||
|
for origin_value in origin:
|
||||||
|
if origin_value not in data_validated:
|
||||||
|
continue
|
||||||
|
data_validated[origin_value] = data[origin_value]
|
||||||
|
|
||||||
|
return data_validated
|
||||||
|
@ -19,7 +19,7 @@ RUN_RELOAD_SNAPSHOTS = 72000
|
|||||||
RUN_RELOAD_HOST = 72000
|
RUN_RELOAD_HOST = 72000
|
||||||
RUN_RELOAD_UPDATER = 7200
|
RUN_RELOAD_UPDATER = 7200
|
||||||
RUN_RELOAD_INGRESS = 930
|
RUN_RELOAD_INGRESS = 930
|
||||||
RUN_RELOAD_SECRETS = 900
|
RUN_RELOAD_SECRETS = 630
|
||||||
|
|
||||||
RUN_WATCHDOG_HOMEASSISTANT_DOCKER = 15
|
RUN_WATCHDOG_HOMEASSISTANT_DOCKER = 15
|
||||||
RUN_WATCHDOG_HOMEASSISTANT_API = 300
|
RUN_WATCHDOG_HOMEASSISTANT_API = 300
|
||||||
|
Loading…
x
Reference in New Issue
Block a user