Move platform_integration_no_support issue to the homeassistant integration (#95927)

* Move platform_integration_no_support issue to the homeassistant integration

* Update test

* Improve repair text

* Update test
This commit is contained in:
Erik Montnemery 2023-07-07 13:31:54 +02:00 committed by GitHub
parent 84979f8e92
commit 86a397720f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
30 changed files with 28 additions and 164 deletions

View File

@ -62,11 +62,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -314,11 +314,5 @@
"smoke": "smoke",
"sound": "sound",
"vibration": "vibration"
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -21,11 +21,5 @@
"update": {
"name": "Update"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -32,11 +32,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -34,11 +34,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -104,11 +104,5 @@
"temperature": { "name": "Target temperature" }
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -76,11 +76,5 @@
"window": {
"name": "Window"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -4,11 +4,5 @@
"_": {
"name": "[%key:component::date::title%]"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -41,11 +41,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -52,11 +52,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -19,6 +19,10 @@
"platform_only": {
"title": "The {domain} integration does not support YAML configuration under its own key",
"description": "The {domain} integration does not support configuration under its own key, it must be configured under its supported platforms.\n\nTo resolve this:\n\n1. Remove `{domain}:` from your YAML configuration file.\n\n2. Restart Home Assistant."
},
"no_platform_setup": {
"title": "Unused YAML configuration for the {platform} integration",
"description": "It's not possible to configure {platform} {domain} by adding `{platform_key}` to the {domain} configuration. Please check the documentation for more information on how to set up this integration.\n\nTo resolve this:\n1. Remove `{platform_key}` occurences from the `{domain}:` configuration in your YAML configuration file.\n2. Restart Home Assistant.\n\nExample that should be removed:\n{yaml_example}\n"
}
},
"system_health": {

View File

@ -74,11 +74,5 @@
"humidifier": {
"name": "[%key:component::humidifier::entity_component::_::name%]"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -86,11 +86,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -34,11 +34,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -159,11 +159,5 @@
"receiver": {
"name": "Receiver"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -154,11 +154,5 @@
"wind_speed": {
"name": "[%key:component::sensor::entity_component::wind_speed::name%]"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -24,11 +24,5 @@
"on": "[%key:common::state::on%]"
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -24,11 +24,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -267,11 +267,5 @@
"wind_speed": {
"name": "Wind speed"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -13,11 +13,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -30,11 +30,5 @@
"outlet": {
"name": "Outlet"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -27,11 +27,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -4,11 +4,5 @@
"_": {
"name": "[%key:component::time::title%]"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -14,11 +14,5 @@
"firmware": {
"name": "Firmware"
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -28,11 +28,5 @@
"returning": "Returning to dock"
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -18,11 +18,5 @@
"performance": "Performance"
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -74,11 +74,5 @@
}
}
}
},
"issues": {
"platform_integration_no_support": {
"title": "[%key:common::issues::platform_integration_no_support_title%]",
"description": "[%key:common::issues::platform_integration_no_support_description%]"
}
}
}

View File

@ -19,6 +19,7 @@ from homeassistant.const import (
)
from homeassistant.core import (
CALLBACK_TYPE,
DOMAIN as HOMEASSISTANT_DOMAIN,
CoreState,
HomeAssistant,
ServiceCall,
@ -216,16 +217,27 @@ class EntityPlatform:
self.platform_name,
self.domain,
)
learn_more_url = None
if self.platform and "custom_components" not in self.platform.__file__: # type: ignore[attr-defined]
learn_more_url = (
f"https://www.home-assistant.io/integrations/{self.platform_name}/"
)
platform_key = f"platform: {self.platform_name}"
yaml_example = f"```yaml\n{self.domain}:\n - {platform_key}\n```"
async_create_issue(
self.hass,
self.domain,
HOMEASSISTANT_DOMAIN,
f"platform_integration_no_support_{self.domain}_{self.platform_name}",
is_fixable=False,
issue_domain=self.platform_name,
learn_more_url=learn_more_url,
severity=IssueSeverity.ERROR,
translation_key="platform_integration_no_support",
translation_key="no_platform_setup",
translation_placeholders={
"domain": self.domain,
"platform": self.platform_name,
"platform_key": platform_key,
"yaml_example": yaml_example,
},
)

View File

@ -87,10 +87,6 @@
"unknown_authorize_url_generation": "Unknown error generating an authorize URL.",
"cloud_not_connected": "Not connected to Home Assistant Cloud."
}
},
"issues": {
"platform_integration_no_support_title": "Platform support not supported",
"platform_integration_no_support_description": "The {platform} platform for the {domain} integration does not support platform setup.\n\nPlease remove it from your configuration and restart Home Assistant to fix this issue."
}
}
}

View File

@ -1477,11 +1477,19 @@ async def test_platform_with_no_setup(
in caplog.text
)
issue = issue_registry.async_get_issue(
domain="mock-integration",
domain="homeassistant",
issue_id="platform_integration_no_support_mock-integration_mock-platform",
)
assert issue
assert issue.translation_key == "platform_integration_no_support"
assert issue.issue_domain == "mock-platform"
assert issue.learn_more_url is None
assert issue.translation_key == "no_platform_setup"
assert issue.translation_placeholders == {
"domain": "mock-integration",
"platform": "mock-platform",
"platform_key": "platform: mock-platform",
"yaml_example": "```yaml\nmock-integration:\n - platform: mock-platform\n```",
}
async def test_platforms_sharing_services(hass: HomeAssistant) -> None: