From 7860003f150642f72da7fb3719704b0fca7efa68 Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Thu, 8 Jan 2026 04:32:05 -0300 Subject: [PATCH] comms: retry room leave actions --- services/comms/bstein-force-leave-job.yaml | 36 +++++++++++++--------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/services/comms/bstein-force-leave-job.yaml b/services/comms/bstein-force-leave-job.yaml index eef6721..5465f25 100644 --- a/services/comms/bstein-force-leave-job.yaml +++ b/services/comms/bstein-force-leave-job.yaml @@ -2,7 +2,7 @@ apiVersion: batch/v1 kind: Job metadata: - name: bstein-leave-rooms-3 + name: bstein-leave-rooms-4 namespace: comms spec: backoffLimit: 0 @@ -150,20 +150,26 @@ spec: try: for room_id in TARGET_ROOMS: room_q = urllib.parse.quote(room_id, safe="") - leave_status, _ = http_json( - "POST", - f"{SYNAPSE_BASE}/_matrix/client/v3/rooms/{room_q}/leave", - headers={"Authorization": f"Bearer {personal_token}"}, - json_body={}, - timeout=30, - ) - forget_status, _ = http_json( - "POST", - f"{SYNAPSE_BASE}/_matrix/client/v3/rooms/{room_q}/forget", - headers={"Authorization": f"Bearer {personal_token}"}, - json_body={}, - timeout=30, - ) + leave_status = 0 + forget_status = 0 + for attempt in range(1, 6): + leave_status, _ = http_json( + "POST", + f"{SYNAPSE_BASE}/_matrix/client/v3/rooms/{room_q}/leave", + headers={"Authorization": f"Bearer {personal_token}"}, + json_body={}, + timeout=30, + ) + forget_status, _ = http_json( + "POST", + f"{SYNAPSE_BASE}/_matrix/client/v3/rooms/{room_q}/forget", + headers={"Authorization": f"Bearer {personal_token}"}, + json_body={}, + timeout=30, + ) + if leave_status == 200 and forget_status == 200: + break + time.sleep(attempt * 2) results["rooms"][room_id] = {"leave": leave_status, "forget": forget_status} if leave_status != 200 or forget_status != 200: failures.append(room_id)