From 198a3a06d2084e986e6b777ec01d26099423dd23 Mon Sep 17 00:00:00 2001 From: Matthew Elwell Date: Wed, 4 Sep 2024 17:56:00 +0100 Subject: [PATCH 1/2] Remove unnecessary additional setting and rely on grace_period=None --- src/edge_proxy/server.py | 8 ++++---- src/edge_proxy/settings.py | 5 ++--- tests/test_server.py | 2 +- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/edge_proxy/server.py b/src/edge_proxy/server.py index 5dbd029..a7ed893 100644 --- a/src/edge_proxy/server.py +++ b/src/edge_proxy/server.py @@ -50,10 +50,10 @@ async def health_check(): last_successful_update=None, ) - if settings.health_check.count_stale_documents_as_failing: - buffer = settings.health_check.grace_period_seconds * len( - settings.environment_key_pairs - ) + if ( + grace_period := settings.health_check.environment_update_grace_period_seconds + ) is not None: + buffer = grace_period * len(settings.environment_key_pairs) threshold = datetime.now() - timedelta( seconds=settings.api_poll_frequency_seconds + buffer ) diff --git a/src/edge_proxy/settings.py b/src/edge_proxy/settings.py index d8e2c1f..c23f017 100644 --- a/src/edge_proxy/settings.py +++ b/src/edge_proxy/settings.py @@ -4,7 +4,7 @@ import sys from enum import Enum from pathlib import Path -from typing import Any +from typing import Any, Optional import structlog @@ -101,8 +101,7 @@ class ServerSettings(BaseModel): class HealthCheckSettings(BaseModel): - count_stale_documents_as_failing: bool = True - grace_period_seconds: int = 30 + environment_update_grace_period_seconds: Optional[int] = 30 class AppSettings(BaseModel): diff --git a/tests/test_server.py b/tests/test_server.py index 48c06fa..9bf7ea1 100644 --- a/tests/test_server.py +++ b/tests/test_server.py @@ -60,7 +60,7 @@ def test_health_check_returns_200_if_cache_is_stale_and_health_check_configured_ ) -> None: # Given settings = AppSettings( - health_check=HealthCheckSettings(count_stale_documents_as_failing=False) + health_check=HealthCheckSettings(environment_update_grace_period_seconds=None) ) mocker.patch("edge_proxy.server.settings", settings) From cabea8b6a151b7ab8ddfb9c83af889cdd5bfe0ff Mon Sep 17 00:00:00 2001 From: Matthew Elwell Date: Wed, 4 Sep 2024 18:01:35 +0100 Subject: [PATCH 2/2] Formatting changes --- src/edge_proxy/server.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/edge_proxy/server.py b/src/edge_proxy/server.py index a7ed893..1413417 100644 --- a/src/edge_proxy/server.py +++ b/src/edge_proxy/server.py @@ -50,9 +50,8 @@ async def health_check(): last_successful_update=None, ) - if ( - grace_period := settings.health_check.environment_update_grace_period_seconds - ) is not None: + grace_period = settings.health_check.environment_update_grace_period_seconds + if grace_period is not None: buffer = grace_period * len(settings.environment_key_pairs) threshold = datetime.now() - timedelta( seconds=settings.api_poll_frequency_seconds + buffer