diff --git a/services/communication/bstein-force-leave-job.yaml b/services/communication/bstein-force-leave-job.yaml index d7f2a26..668e7ac 100644 --- a/services/communication/bstein-force-leave-job.yaml +++ b/services/communication/bstein-force-leave-job.yaml @@ -2,7 +2,7 @@ apiVersion: batch/v1 kind: Job metadata: - name: bstein-force-leave-4 + name: bstein-force-leave-5 namespace: comms spec: backoffLimit: 0 @@ -135,25 +135,37 @@ spec: conn = db_connect() conn.autocommit = False try: - token = login(SEEDER_USER, SEEDER_PASS) - seeder_user_id = whoami(token) - results["seeder_user_id"] = seeder_user_id + try: + token = login(SEEDER_USER, SEEDER_PASS) + results["seeder_login"] = "ok" + except Exception as e: + results["seeder_login"] = "error" + results["seeder_login_error"] = str(e) + print(json.dumps(results, indent=2, sort_keys=True)) + raise try: - seeder_admin = db_get_admin(conn, seeder_user_id) + seeder_user_id = whoami(token) + results["seeder_user_id"] = seeder_user_id except Exception as e: - seeder_admin = None - results["seeder_admin_db_error"] = str(e) - results["seeder_admin_db"] = seeder_admin + results["seeder_user_id_error"] = str(e) + seeder_user_id = None - # If the seeder user isn't marked admin in Synapse DB, promote it. - # This is safe and reversible, and required for Synapse admin APIs. - if seeder_admin == 0: - db_set_admin(conn, seeder_user_id, True) - conn.commit() - results["seeder_admin_db_promoted"] = True - else: - results["seeder_admin_db_promoted"] = False + if seeder_user_id: + try: + results["seeder_admin_db"] = db_get_admin(conn, seeder_user_id) + except Exception as e: + results["seeder_admin_db_error"] = str(e) + + if results.get("seeder_admin_db") == 0: + try: + db_set_admin(conn, seeder_user_id, True) + conn.commit() + results["seeder_admin_db_promoted"] = True + except Exception as e: + results["seeder_admin_db_promote_error"] = str(e) + else: + results["seeder_admin_db_promoted"] = False for room_id in TARGET_ROOMS: room_res = {} @@ -165,8 +177,10 @@ spec: room_res["deleted"] = False room_res["delete_error"] = str(e) - # Verify the user is no longer joined to the rooms (best effort). - results["target_joined_rooms_after"] = admin_joined_rooms(token, TARGET_USER_ID) + try: + results["target_joined_rooms_after"] = admin_joined_rooms(token, TARGET_USER_ID) + except Exception as e: + results["target_joined_rooms_after_error"] = str(e) print(json.dumps(results, indent=2, sort_keys=True)) finally: