Spaces:
Configuration error
Configuration error
import os | |
import requests | |
from datetime import datetime | |
# GitHub API endpoints | |
GITHUB_API_URL = "https://api.github.com" | |
REPO_OWNER = "BerriAI" | |
REPO_NAME = "litellm" | |
# GitHub personal access token (required for uploading release assets) | |
GITHUB_ACCESS_TOKEN = os.environ.get("GITHUB_ACCESS_TOKEN") | |
# Headers for GitHub API requests | |
headers = { | |
"Accept": "application/vnd.github+json", | |
"Authorization": f"Bearer {GITHUB_ACCESS_TOKEN}", | |
"X-GitHub-Api-Version": "2022-11-28", | |
} | |
# Get the latest release | |
releases_url = f"{GITHUB_API_URL}/repos/{REPO_OWNER}/{REPO_NAME}/releases/latest" | |
response = requests.get(releases_url, headers=headers) | |
latest_release = response.json() | |
print("Latest release:", latest_release) | |
# Upload an asset to the latest release | |
upload_url = latest_release["upload_url"].split("{?")[0] | |
asset_name = "results_stats.csv" | |
asset_path = os.path.join(os.getcwd(), asset_name) | |
print("upload_url:", upload_url) | |
with open(asset_path, "rb") as asset_file: | |
asset_data = asset_file.read() | |
upload_payload = { | |
"name": asset_name, | |
"label": "Load test results", | |
"created_at": datetime.utcnow().isoformat() + "Z", | |
} | |
upload_headers = headers.copy() | |
upload_headers["Content-Type"] = "application/octet-stream" | |
upload_response = requests.post( | |
upload_url, | |
headers=upload_headers, | |
data=asset_data, | |
params=upload_payload, | |
) | |
if upload_response.status_code == 201: | |
print(f"Asset '{asset_name}' uploaded successfully to the latest release.") | |
else: | |
print(f"Failed to upload asset. Response: {upload_response.text}") | |