From 36123717be1ded7c2c9e12c373b6d8faf81b9355 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Thu, 14 Mar 2024 19:10:52 +0100 Subject: [PATCH] Allow entity platforms without entity_component in icon validation (#113422) * Allow entity platforms without entity_component * Rename variable --------- Co-authored-by: jbouwh --- script/hassfest/icons.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/script/hassfest/icons.py b/script/hassfest/icons.py index 17f7d6075ce..61745dba828 100644 --- a/script/hassfest/icons.py +++ b/script/hassfest/icons.py @@ -47,7 +47,7 @@ def ensure_not_same_as_default(value: dict) -> dict: return value -def icon_schema(integration_type: str) -> vol.Schema: +def icon_schema(integration_type: str, no_entity_platforms: bool) -> vol.Schema: """Create a icon schema.""" state_validator = cv.schema_with_slug_keys( @@ -78,7 +78,7 @@ def icon_schema(integration_type: str) -> vol.Schema: ) if integration_type in ("entity", "helper", "system"): - if integration_type != "entity": + if integration_type != "entity" or no_entity_platforms: field = vol.Optional("entity_component") else: field = vol.Required("entity_component") @@ -126,7 +126,9 @@ def validate_icon_file(config: Config, integration: Integration) -> None: # noq integration.add_error("icons", f"Invalid JSON in {name}: {err}") return - schema = icon_schema(integration.integration_type) + no_entity_platforms = name in ("notify", "image_processing") + + schema = icon_schema(integration.integration_type, no_entity_platforms) try: schema(icons)