Files
BlenderTemplate/tests/utils/forge.py
T
Aurelien Vaillant 81f789cc30 Update all CI config
2022-02-23 17:35:11 +01:00

37 lines
934 B
Python

import os
import requests
from pathlib import Path
from github import Github
def read_token():
token_file = Path(os.getcwd(), 'tests', 'token.txt')
with open(token_file, 'r') as f:
token = f.read()
return token
def get_release_file(filename: str, repo: str):
g = Github(read_token())
repository = g.get_repo(repo)
latest = repository.get_latest_release()
latest.get_assets()
for file in latest.get_assets():
if file.name == filename:
dl_file(file.url, file.name)
def dl_file(url: str, filename: str):
"""From specific asset, download it"""
headers = {
'Authorization': f'token {read_token()}',
'Accept': 'application/octet-stream'
}
session = requests.Session()
link = session.get(url, stream=True, headers=headers)
with open(filename, 'wb') as f:
for chunk in link.iter_content(1024*1024):
f.write(chunk)