From 3aa36e87b830d3417436f30e54a7172d0572b57f Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Thu, 8 Jan 2026 02:00:52 -0300 Subject: [PATCH] comms: retry guest rename when MAS restarts --- services/comms/guest-name-job.yaml | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/services/comms/guest-name-job.yaml b/services/comms/guest-name-job.yaml index 5e5a2e9..10dde37 100644 --- a/services/comms/guest-name-job.yaml +++ b/services/comms/guest-name-job.yaml @@ -51,6 +51,7 @@ spec: import os import random import requests + import time import urllib.parse ADJ = [ @@ -76,14 +77,21 @@ spec: with open(MAS_ADMIN_CLIENT_SECRET_FILE, "r", encoding="utf-8") as f: secret = f.read().strip() basic = base64.b64encode(f"{MAS_ADMIN_CLIENT_ID}:{secret}".encode()).decode() - r = requests.post( - MAS_TOKEN_URL, - headers={"Authorization": f"Basic {basic}"}, - data={"grant_type": "client_credentials", "scope": "urn:mas:admin"}, - timeout=30, - ) - r.raise_for_status() - return r.json()["access_token"] + last_err = None + for attempt in range(5): + try: + r = requests.post( + MAS_TOKEN_URL, + headers={"Authorization": f"Basic {basic}"}, + data={"grant_type": "client_credentials", "scope": "urn:mas:admin"}, + timeout=30, + ) + r.raise_for_status() + return r.json()["access_token"] + except Exception as exc: # noqa: BLE001 + last_err = exc + time.sleep(2 ** attempt) + raise last_err def mas_user_id(token, username): r = requests.get(