From 3c478c312aa939f993838d27152f1aa0dac0448f Mon Sep 17 00:00:00 2001 From: Allen Porter Date: Thu, 31 Mar 2022 04:22:33 -0700 Subject: [PATCH] Fix google calendar blocking call, running outside of executor (#68948) --- homeassistant/components/google/api.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/google/api.py b/homeassistant/components/google/api.py index 10b4a35e25f..ea3d23dcb01 100644 --- a/homeassistant/components/google/api.py +++ b/homeassistant/components/google/api.py @@ -183,9 +183,13 @@ class GoogleCalendarService: """Get the calendar service with valid credetnails.""" await self._session.async_ensure_token_valid() creds = _async_google_creds(self._hass, self._session.token) - return google_discovery.build( - "calendar", "v3", credentials=creds, cache_discovery=False - ) + + def _build() -> google_discovery.Resource: + return google_discovery.build( + "calendar", "v3", credentials=creds, cache_discovery=False + ) + + return await self._hass.async_add_executor_job(_build) async def async_list_calendars( self,