Spaces:
Sleeping
Sleeping
| import httpx | |
| import os | |
| # from dotenv import load_dotenv | |
| # load_dotenv() | |
| def notify_evaluation_server(evaluation_url: str, payload: dict) -> bool: | |
| """ | |
| Send repo details back to the evaluation server. | |
| Retries with exponential backoff if needed. | |
| """ | |
| headers = {"Content-Type": "application/json"} | |
| delay = 1 # start with 1 second | |
| for attempt in range(5): # try up to 5 times | |
| try: | |
| r = httpx.post(evaluation_url, headers=headers, json=payload) | |
| if r.status_code == 200: | |
| print("✅ Evaluation server notified successfully.") | |
| return True | |
| else: | |
| print(f"⚠️ Attempt {attempt+1}: Server responded {r.status_code} - {r.text}") | |
| except Exception as e: | |
| print(f"❌ Attempt {attempt+1} failed: {e}") | |
| # Exponential backoff | |
| import time | |
| time.sleep(delay) | |
| delay *= 2 | |
| print("❌ Failed to notify evaluation server after retries.") | |
| return False |