mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-24 09:36:31 +00:00
Bump voluptuous from 0.12.1 to 0.12.2 (#3147)
This commit is contained in:
parent
c9d3f65cc8
commit
4416b6524e
@ -17,4 +17,4 @@ pulsectl==21.9.1
|
||||
pyudev==0.22.0
|
||||
ruamel.yaml==0.15.100
|
||||
sentry-sdk==1.4.0
|
||||
voluptuous==0.12.1
|
||||
voluptuous==0.12.2
|
||||
|
@ -281,7 +281,7 @@ _SCHEMA_ADDON_CONFIG = vol.Schema(
|
||||
vol.Optional(ATTR_PANEL_ICON, default="mdi:puzzle"): str,
|
||||
vol.Optional(ATTR_PANEL_TITLE): str,
|
||||
vol.Optional(ATTR_PANEL_ADMIN, default=True): vol.Boolean(),
|
||||
vol.Optional(ATTR_HOMEASSISTANT): vol.Maybe(version_tag),
|
||||
vol.Optional(ATTR_HOMEASSISTANT): version_tag,
|
||||
vol.Optional(ATTR_HOST_NETWORK, default=False): vol.Boolean(),
|
||||
vol.Optional(ATTR_HOST_PID, default=False): vol.Boolean(),
|
||||
vol.Optional(ATTR_HOST_IPC, default=False): vol.Boolean(),
|
||||
|
@ -110,7 +110,7 @@ from .utils import api_process, api_process_raw, api_validate, json_loads
|
||||
|
||||
_LOGGER: logging.Logger = logging.getLogger(__name__)
|
||||
|
||||
SCHEMA_VERSION = vol.Schema({vol.Optional(ATTR_VERSION): vol.Coerce(str)})
|
||||
SCHEMA_VERSION = vol.Schema({vol.Optional(ATTR_VERSION): str})
|
||||
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA_OPTIONS = vol.Schema(
|
||||
@ -118,8 +118,8 @@ SCHEMA_OPTIONS = vol.Schema(
|
||||
vol.Optional(ATTR_BOOT): vol.Coerce(AddonBoot),
|
||||
vol.Optional(ATTR_NETWORK): vol.Maybe(docker_ports),
|
||||
vol.Optional(ATTR_AUTO_UPDATE): vol.Boolean(),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_AUDIO_INPUT): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT): vol.Maybe(str),
|
||||
vol.Optional(ATTR_AUDIO_INPUT): vol.Maybe(str),
|
||||
vol.Optional(ATTR_INGRESS_PANEL): vol.Boolean(),
|
||||
vol.Optional(ATTR_WATCHDOG): vol.Boolean(),
|
||||
}
|
||||
@ -309,7 +309,7 @@ class APIAddons(CoreSysAttributes):
|
||||
|
||||
# Extend schema with add-on specific validation
|
||||
addon_schema = SCHEMA_OPTIONS.extend(
|
||||
{vol.Optional(ATTR_OPTIONS): vol.Any(None, addon.schema)}
|
||||
{vol.Optional(ATTR_OPTIONS): vol.Maybe(addon.schema)}
|
||||
)
|
||||
|
||||
# Validate/Process Body
|
||||
|
@ -56,10 +56,10 @@ SCHEMA_MUTE = vol.Schema(
|
||||
}
|
||||
)
|
||||
|
||||
SCHEMA_DEFAULT = vol.Schema({vol.Required(ATTR_NAME): vol.Coerce(str)})
|
||||
SCHEMA_DEFAULT = vol.Schema({vol.Required(ATTR_NAME): str})
|
||||
|
||||
SCHEMA_PROFILE = vol.Schema(
|
||||
{vol.Required(ATTR_CARD): vol.Coerce(str), vol.Required(ATTR_NAME): vol.Coerce(str)}
|
||||
{vol.Required(ATTR_CARD): str, vol.Required(ATTR_NAME): str}
|
||||
)
|
||||
|
||||
|
||||
|
@ -23,8 +23,8 @@ _LOGGER: logging.Logger = logging.getLogger(__name__)
|
||||
|
||||
SCHEMA_PASSWORD_RESET = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_USERNAME): vol.Coerce(str),
|
||||
vol.Required(ATTR_PASSWORD): vol.Coerce(str),
|
||||
vol.Required(ATTR_USERNAME): str,
|
||||
vol.Required(ATTR_PASSWORD): str,
|
||||
}
|
||||
)
|
||||
|
||||
|
@ -38,27 +38,25 @@ RE_SLUGIFY_NAME = re.compile(r"[^A-Za-z0-9]+")
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA_RESTORE_PARTIAL = vol.Schema(
|
||||
{
|
||||
vol.Optional(ATTR_PASSWORD): vol.Any(None, vol.Coerce(str)),
|
||||
vol.Optional(ATTR_PASSWORD): vol.Maybe(str),
|
||||
vol.Optional(ATTR_HOMEASSISTANT): vol.Boolean(),
|
||||
vol.Optional(ATTR_ADDONS): vol.All([vol.Coerce(str)], vol.Unique()),
|
||||
vol.Optional(ATTR_ADDONS): vol.All([str], vol.Unique()),
|
||||
vol.Optional(ATTR_FOLDERS): vol.All([vol.In(ALL_FOLDERS)], vol.Unique()),
|
||||
}
|
||||
)
|
||||
|
||||
SCHEMA_RESTORE_FULL = vol.Schema(
|
||||
{vol.Optional(ATTR_PASSWORD): vol.Any(None, vol.Coerce(str))}
|
||||
)
|
||||
SCHEMA_RESTORE_FULL = vol.Schema({vol.Optional(ATTR_PASSWORD): vol.Maybe(str)})
|
||||
|
||||
SCHEMA_BACKUP_FULL = vol.Schema(
|
||||
{
|
||||
vol.Optional(ATTR_NAME): vol.Coerce(str),
|
||||
vol.Optional(ATTR_PASSWORD): vol.Any(None, vol.Coerce(str)),
|
||||
vol.Optional(ATTR_NAME): str,
|
||||
vol.Optional(ATTR_PASSWORD): vol.Maybe(str),
|
||||
}
|
||||
)
|
||||
|
||||
SCHEMA_BACKUP_PARTIAL = SCHEMA_BACKUP_FULL.extend(
|
||||
{
|
||||
vol.Optional(ATTR_ADDONS): vol.All([vol.Coerce(str)], vol.Unique()),
|
||||
vol.Optional(ATTR_ADDONS): vol.All([str], vol.Unique()),
|
||||
vol.Optional(ATTR_FOLDERS): vol.All([vol.In(ALL_FOLDERS)], vol.Unique()),
|
||||
vol.Optional(ATTR_HOMEASSISTANT): vol.Boolean(),
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ _LOGGER: logging.Logger = logging.getLogger(__name__)
|
||||
|
||||
SCHEMA_DOCKER_REGISTRY = vol.Schema(
|
||||
{
|
||||
vol.Coerce(str): {
|
||||
str: {
|
||||
vol.Required(ATTR_USERNAME): str,
|
||||
vol.Required(ATTR_PASSWORD): str,
|
||||
}
|
||||
|
@ -48,9 +48,9 @@ SCHEMA_OPTIONS = vol.Schema(
|
||||
vol.Optional(ATTR_SSL): vol.Boolean(),
|
||||
vol.Optional(ATTR_WATCHDOG): vol.Boolean(),
|
||||
vol.Optional(ATTR_WAIT_BOOT): vol.All(vol.Coerce(int), vol.Range(min=60)),
|
||||
vol.Optional(ATTR_REFRESH_TOKEN): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_AUDIO_INPUT): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_REFRESH_TOKEN): vol.Maybe(str),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT): vol.Maybe(str),
|
||||
vol.Optional(ATTR_AUDIO_INPUT): vol.Maybe(str),
|
||||
}
|
||||
)
|
||||
|
||||
|
@ -38,7 +38,7 @@ from .utils import api_process, api_process_raw, api_validate
|
||||
|
||||
SERVICE = "service"
|
||||
|
||||
SCHEMA_OPTIONS = vol.Schema({vol.Optional(ATTR_HOSTNAME): vol.Coerce(str)})
|
||||
SCHEMA_OPTIONS = vol.Schema({vol.Optional(ATTR_HOSTNAME): str})
|
||||
|
||||
|
||||
class APIHost(CoreSysAttributes):
|
||||
|
@ -61,12 +61,12 @@ def unique_addons(addons_list):
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA_BACKUP = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_SLUG): vol.Coerce(str),
|
||||
vol.Required(ATTR_SLUG): str,
|
||||
vol.Required(ATTR_TYPE): vol.Coerce(BackupType),
|
||||
vol.Required(ATTR_NAME): vol.Coerce(str),
|
||||
vol.Required(ATTR_DATE): vol.Coerce(str),
|
||||
vol.Required(ATTR_NAME): str,
|
||||
vol.Required(ATTR_DATE): str,
|
||||
vol.Inclusive(ATTR_PROTECTED, "encrypted"): vol.All(
|
||||
vol.Coerce(str), vol.Length(min=1, max=1)
|
||||
str, vol.Length(min=1, max=1)
|
||||
),
|
||||
vol.Inclusive(ATTR_CRYPTO, "encrypted"): CRYPTO_AES128,
|
||||
vol.Optional(ATTR_HOMEASSISTANT, default=dict): vol.Schema(
|
||||
@ -76,17 +76,13 @@ SCHEMA_BACKUP = vol.Schema(
|
||||
vol.Optional(ATTR_BOOT, default=True): vol.Boolean(),
|
||||
vol.Optional(ATTR_SSL, default=False): vol.Boolean(),
|
||||
vol.Optional(ATTR_PORT, default=8123): network_port,
|
||||
vol.Optional(ATTR_REFRESH_TOKEN): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_REFRESH_TOKEN): vol.Maybe(str),
|
||||
vol.Optional(ATTR_WATCHDOG, default=True): vol.Boolean(),
|
||||
vol.Optional(ATTR_WAIT_BOOT, default=600): vol.All(
|
||||
vol.Coerce(int), vol.Range(min=60)
|
||||
),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT, default=None): vol.Maybe(
|
||||
vol.Coerce(str)
|
||||
),
|
||||
vol.Optional(ATTR_AUDIO_INPUT, default=None): vol.Maybe(
|
||||
vol.Coerce(str)
|
||||
),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT, default=None): vol.Maybe(str),
|
||||
vol.Optional(ATTR_AUDIO_INPUT, default=None): vol.Maybe(str),
|
||||
},
|
||||
extra=vol.REMOVE_EXTRA,
|
||||
),
|
||||
@ -98,8 +94,8 @@ SCHEMA_BACKUP = vol.Schema(
|
||||
[
|
||||
vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_SLUG): vol.Coerce(str),
|
||||
vol.Required(ATTR_NAME): vol.Coerce(str),
|
||||
vol.Required(ATTR_SLUG): str,
|
||||
vol.Required(ATTR_NAME): str,
|
||||
vol.Required(ATTR_VERSION): version_tag,
|
||||
vol.Optional(ATTR_SIZE, default=0): vol.Coerce(float),
|
||||
},
|
||||
|
@ -6,5 +6,5 @@ from supervisor.validate import network_port
|
||||
from ..const import ATTR_HOST, ATTR_PORT
|
||||
|
||||
SCHEMA = vol.Schema(
|
||||
{vol.Required(ATTR_HOST): vol.Coerce(str), vol.Required(ATTR_PORT): network_port}
|
||||
{vol.Required(ATTR_HOST): str, vol.Required(ATTR_PORT): network_port}
|
||||
)
|
||||
|
@ -6,5 +6,5 @@ from supervisor.validate import network_port
|
||||
from ..const import ATTR_HOST, ATTR_PORT
|
||||
|
||||
SCHEMA = vol.Schema(
|
||||
{vol.Required(ATTR_HOST): vol.Coerce(str), vol.Required(ATTR_PORT): network_port}
|
||||
{vol.Required(ATTR_HOST): str, vol.Required(ATTR_PORT): network_port}
|
||||
)
|
||||
|
@ -7,9 +7,9 @@ from ..const import ATTR_API_KEY, ATTR_HOST, ATTR_PORT, ATTR_SERIAL
|
||||
|
||||
SCHEMA = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_HOST): vol.Coerce(str),
|
||||
vol.Required(ATTR_HOST): str,
|
||||
vol.Required(ATTR_PORT): network_port,
|
||||
vol.Required(ATTR_SERIAL): vol.Coerce(str),
|
||||
vol.Required(ATTR_API_KEY): vol.Coerce(str),
|
||||
vol.Required(ATTR_SERIAL): str,
|
||||
vol.Required(ATTR_API_KEY): str,
|
||||
}
|
||||
)
|
||||
|
@ -7,9 +7,9 @@ from ..const import ATTR_HOST, ATTR_PORT
|
||||
|
||||
SCHEMA = vol.Schema(
|
||||
{
|
||||
vol.Coerce(str): vol.Schema(
|
||||
str: vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_HOST): vol.Coerce(str),
|
||||
vol.Required(ATTR_HOST): str,
|
||||
vol.Required(ATTR_PORT): network_port,
|
||||
}
|
||||
)
|
||||
|
@ -3,4 +3,4 @@ import voluptuous as vol
|
||||
|
||||
from ..const import ATTR_URL
|
||||
|
||||
SCHEMA = vol.Schema({vol.Required(ATTR_URL): vol.Coerce(str)})
|
||||
SCHEMA = vol.Schema({vol.Required(ATTR_URL): str})
|
||||
|
@ -15,13 +15,13 @@ from ..const import (
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_HOST): vol.Coerce(str),
|
||||
vol.Required(ATTR_HOST): str,
|
||||
vol.Required(ATTR_PORT): network_port,
|
||||
vol.Optional(ATTR_USERNAME): vol.Coerce(str),
|
||||
vol.Optional(ATTR_PASSWORD): vol.Coerce(str),
|
||||
vol.Optional(ATTR_USERNAME): str,
|
||||
vol.Optional(ATTR_PASSWORD): str,
|
||||
vol.Optional(ATTR_SSL, default=False): vol.Boolean(),
|
||||
vol.Optional(ATTR_PROTOCOL, default="3.1.1"): vol.All(
|
||||
vol.Coerce(str), vol.In(["3.1", "3.1.1"])
|
||||
str, vol.In(["3.1", "3.1.1"])
|
||||
),
|
||||
}
|
||||
)
|
||||
|
@ -6,5 +6,5 @@ from supervisor.validate import network_port
|
||||
from ..const import ATTR_HOST, ATTR_PORT
|
||||
|
||||
SCHEMA = vol.Schema(
|
||||
{vol.Required(ATTR_HOST): vol.Coerce(str), vol.Required(ATTR_PORT): network_port}
|
||||
{vol.Required(ATTR_HOST): str, vol.Required(ATTR_PORT): network_port}
|
||||
)
|
||||
|
@ -32,7 +32,7 @@ SCHEMA_DISCOVERY = vol.Schema(
|
||||
vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_UUID): uuid_match,
|
||||
vol.Required(ATTR_ADDON): vol.Coerce(str),
|
||||
vol.Required(ATTR_ADDON): str,
|
||||
vol.Required(ATTR_SERVICE): valid_discovery_service,
|
||||
vol.Required(ATTR_CONFIG): vol.Maybe(dict),
|
||||
},
|
||||
|
@ -28,14 +28,14 @@ SCHEMA_HASS_CONFIG = vol.Schema(
|
||||
vol.Optional(ATTR_ACCESS_TOKEN): token,
|
||||
vol.Optional(ATTR_BOOT, default=True): vol.Boolean(),
|
||||
vol.Optional(ATTR_PORT, default=8123): network_port,
|
||||
vol.Optional(ATTR_REFRESH_TOKEN): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_REFRESH_TOKEN): vol.Maybe(str),
|
||||
vol.Optional(ATTR_SSL, default=False): vol.Boolean(),
|
||||
vol.Optional(ATTR_WATCHDOG, default=True): vol.Boolean(),
|
||||
vol.Optional(ATTR_WAIT_BOOT, default=600): vol.All(
|
||||
vol.Coerce(int), vol.Range(min=60)
|
||||
),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT, default=None): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_AUDIO_INPUT, default=None): vol.Maybe(vol.Coerce(str)),
|
||||
vol.Optional(ATTR_AUDIO_OUTPUT, default=None): vol.Maybe(str),
|
||||
vol.Optional(ATTR_AUDIO_INPUT, default=None): vol.Maybe(str),
|
||||
},
|
||||
extra=vol.REMOVE_EXTRA,
|
||||
)
|
||||
|
@ -26,20 +26,18 @@ _LOGGER: logging.Logger = logging.getLogger(__name__)
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA_SERVICE_MQTT = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_HOST): vol.Coerce(str),
|
||||
vol.Required(ATTR_HOST): str,
|
||||
vol.Required(ATTR_PORT): network_port,
|
||||
vol.Optional(ATTR_USERNAME): vol.Coerce(str),
|
||||
vol.Optional(ATTR_PASSWORD): vol.Coerce(str),
|
||||
vol.Optional(ATTR_USERNAME): str,
|
||||
vol.Optional(ATTR_PASSWORD): str,
|
||||
vol.Optional(ATTR_SSL, default=False): vol.Boolean(),
|
||||
vol.Optional(ATTR_PROTOCOL, default="3.1.1"): vol.All(
|
||||
vol.Coerce(str), vol.In(["3.1", "3.1.1"])
|
||||
str, vol.In(["3.1", "3.1.1"])
|
||||
),
|
||||
}
|
||||
)
|
||||
|
||||
SCHEMA_CONFIG_MQTT = SCHEMA_SERVICE_MQTT.extend(
|
||||
{vol.Required(ATTR_ADDON): vol.Coerce(str)}
|
||||
)
|
||||
SCHEMA_CONFIG_MQTT = SCHEMA_SERVICE_MQTT.extend({vol.Required(ATTR_ADDON): str})
|
||||
|
||||
|
||||
class MQTTService(ServiceInterface):
|
||||
|
@ -24,16 +24,14 @@ _LOGGER: logging.Logger = logging.getLogger(__name__)
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA_SERVICE_MYSQL = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_HOST): vol.Coerce(str),
|
||||
vol.Required(ATTR_HOST): str,
|
||||
vol.Required(ATTR_PORT): network_port,
|
||||
vol.Optional(ATTR_USERNAME): vol.Coerce(str),
|
||||
vol.Optional(ATTR_PASSWORD): vol.Coerce(str),
|
||||
vol.Optional(ATTR_USERNAME): str,
|
||||
vol.Optional(ATTR_PASSWORD): str,
|
||||
}
|
||||
)
|
||||
|
||||
SCHEMA_CONFIG_MYSQL = SCHEMA_SERVICE_MYSQL.extend(
|
||||
{vol.Required(ATTR_ADDON): vol.Coerce(str)}
|
||||
)
|
||||
SCHEMA_CONFIG_MYSQL = SCHEMA_SERVICE_MYSQL.extend({vol.Required(ATTR_ADDON): str})
|
||||
|
||||
|
||||
class MySQLService(ServiceInterface):
|
||||
|
@ -7,9 +7,9 @@ from ..const import ATTR_MAINTAINER, ATTR_NAME, ATTR_URL
|
||||
# pylint: disable=no-value-for-parameter
|
||||
SCHEMA_REPOSITORY_CONFIG = vol.Schema(
|
||||
{
|
||||
vol.Required(ATTR_NAME): vol.Coerce(str),
|
||||
vol.Required(ATTR_NAME): str,
|
||||
vol.Optional(ATTR_URL): vol.Url(),
|
||||
vol.Optional(ATTR_MAINTAINER): vol.Coerce(str),
|
||||
vol.Optional(ATTR_MAINTAINER): str,
|
||||
},
|
||||
extra=vol.REMOVE_EXTRA,
|
||||
)
|
||||
|
@ -54,10 +54,14 @@ sha256 = vol.Match(r"^[0-9a-f]{64}$")
|
||||
token = vol.Match(r"^[0-9a-f]{32,256}$")
|
||||
|
||||
|
||||
def version_tag(value: Union[str, None, int, float]) -> Optional[AwesomeVersion]:
|
||||
def version_tag(
|
||||
value: Union[str, None, int, float, AwesomeVersion]
|
||||
) -> Optional[AwesomeVersion]:
|
||||
"""Validate main version handling."""
|
||||
if value is None:
|
||||
return None
|
||||
if isinstance(value, AwesomeVersion):
|
||||
return value
|
||||
return AwesomeVersion(value)
|
||||
|
||||
|
||||
@ -98,7 +102,7 @@ repositories = vol.All([validate_repository], vol.Unique())
|
||||
|
||||
docker_port = vol.All(str, vol.Match(r"^\d+(?:/tcp|/udp)?$"))
|
||||
docker_ports = vol.Schema({docker_port: vol.Maybe(network_port)})
|
||||
docker_ports_description = vol.Schema({docker_port: vol.Coerce(str)})
|
||||
docker_ports_description = vol.Schema({docker_port: str})
|
||||
|
||||
|
||||
# pylint: disable=no-value-for-parameter
|
||||
@ -137,7 +141,7 @@ SCHEMA_UPDATER_CONFIG = vol.Schema(
|
||||
SCHEMA_SUPERVISOR_CONFIG = vol.Schema(
|
||||
{
|
||||
vol.Optional(ATTR_TIMEZONE): validate_timezone,
|
||||
vol.Optional(ATTR_LAST_BOOT): vol.Coerce(str),
|
||||
vol.Optional(ATTR_LAST_BOOT): str,
|
||||
vol.Optional(
|
||||
ATTR_VERSION, default=AwesomeVersion(SUPERVISOR_VERSION)
|
||||
): version_tag,
|
||||
@ -178,9 +182,7 @@ SCHEMA_INGRESS_CONFIG = vol.Schema(
|
||||
vol.Required(ATTR_SESSION, default=dict): vol.Schema(
|
||||
{token: vol.Coerce(float)}
|
||||
),
|
||||
vol.Required(ATTR_PORTS, default=dict): vol.Schema(
|
||||
{vol.Coerce(str): network_port}
|
||||
),
|
||||
vol.Required(ATTR_PORTS, default=dict): vol.Schema({str: network_port}),
|
||||
},
|
||||
extra=vol.REMOVE_EXTRA,
|
||||
)
|
||||
|
Loading…
x
Reference in New Issue
Block a user