diff --git a/Dockerfile b/Dockerfile index 43a93701..2d3d8023 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.12.1-alpine3.18 as base +FROM python:3.13.0a4-alpine3.18 as base FROM base as builder WORKDIR /app diff --git a/src/requirements.txt b/src/requirements.txt index e26a13f0..d46d6535 100644 --- a/src/requirements.txt +++ b/src/requirements.txt @@ -1,5 +1,5 @@ kubernetes==28.1.0 requests==2.31.0 python-json-logger==2.0.7 -logfmter==0.0.6 -argparse==1.4.0 \ No newline at end of file +logfmter==0.0.7 +argparse==1.4.0 diff --git a/src/resources.py b/src/resources.py index b3dfe426..ca3533f1 100755 --- a/src/resources.py +++ b/src/resources.py @@ -365,8 +365,6 @@ def _watch_resource_iterator(label, label_value, target_folder, request_url, req def _watch_resource_loop(mode, *args): while True: try: - # Always wait to slow down the loop in case of exceptions - sleep(int(os.getenv("ERROR_THROTTLE_SLEEP", 5))) if mode == "SLEEP": list_resources(*args) sleep(int(os.getenv("SLEEP_TIME", 60))) @@ -379,11 +377,14 @@ def _watch_resource_loop(mode, *args): raise except ProtocolError as e: logger.error(f"ProtocolError when calling kubernetes: {e}\n") + sleep(int(os.getenv("ERROR_THROTTLE_SLEEP", 5))) except MaxRetryError as e: logger.error(f"MaxRetryError when calling kubernetes: {e}\n") + sleep(int(os.getenv("ERROR_THROTTLE_SLEEP", 5))) except Exception as e: logger.error(f"Received unknown exception: {e}\n") traceback.print_exc() + sleep(int(os.getenv("ERROR_THROTTLE_SLEEP", 5))) def watch_for_changes(mode, label, label_value, target_folder, request_url, request_method, request_payload,