From 02eec73644c4460cd0979a1aa28a410a53215f7b Mon Sep 17 00:00:00 2001 From: jjlawren Date: Mon, 11 Apr 2022 00:25:19 -0500 Subject: [PATCH] Retry on more Plex connection failures during startup (#69822) --- homeassistant/components/plex/__init__.py | 3 ++- tests/components/plex/test_init.py | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/plex/__init__.py b/homeassistant/components/plex/__init__.py index e0a84ced16f0..4ca83d982428 100644 --- a/homeassistant/components/plex/__init__.py +++ b/homeassistant/components/plex/__init__.py @@ -159,7 +159,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: entry.data[CONF_SERVER], error, ) - return False + # Retry as setups behind a proxy can return transient 404 or 502 errors + raise ConfigEntryNotReady from error _LOGGER.debug( "Connected to: %s (%s)", plex_server.friendly_name, plex_server.url_in_use diff --git a/tests/components/plex/test_init.py b/tests/components/plex/test_init.py index 8e09f7023862..bbab50a7bbb4 100644 --- a/tests/components/plex/test_init.py +++ b/tests/components/plex/test_init.py @@ -63,7 +63,7 @@ async def test_setup_config_entry_with_error(hass, entry): await hass.async_block_till_done() assert len(hass.config_entries.async_entries(const.DOMAIN)) == 1 - assert entry.state is ConfigEntryState.SETUP_ERROR + assert entry.state is ConfigEntryState.SETUP_RETRY async def test_setup_with_insecure_config_entry(hass, entry, setup_plex_server):