Don't fail when tz is incorrect

This commit is contained in:
Nick Mowen 2023-11-22 20:55:02 -06:00
parent 7d157dfeb0
commit fbb24b0047

View File

@ -10,6 +10,7 @@ from collections import Counter
from collections.abc import Mapping from collections.abc import Mapping
from pathlib import Path from pathlib import Path
from typing import Any, Tuple from typing import Any, Tuple
from zoneinfo import ZoneInfoNotFoundError
import numpy as np import numpy as np
import pytz import pytz
@ -266,7 +267,16 @@ def find_by_key(dictionary, target_key):
def get_tomorrow_at_time(hour: int) -> datetime.datetime: def get_tomorrow_at_time(hour: int) -> datetime.datetime:
"""Returns the datetime of the following day at 2am.""" """Returns the datetime of the following day at 2am."""
try:
tomorrow = datetime.datetime.now(get_localzone()) + datetime.timedelta(days=1) tomorrow = datetime.datetime.now(get_localzone()) + datetime.timedelta(days=1)
except ZoneInfoNotFoundError:
tomorrow = datetime.datetime.now(datetime.timezone.utc) + datetime.timedelta(
days=1
)
logger.warning(
"Using utc for maintenance due to missing or incorrect timezone set"
)
return tomorrow.replace(hour=hour, minute=0, second=0).astimezone( return tomorrow.replace(hour=hour, minute=0, second=0).astimezone(
datetime.timezone.utc datetime.timezone.utc
) )