arduino-pico/package/upload_release.py
2021-05-28 19:04:12 -07:00

28 lines
1 KiB
Python
Executable file

#!/usr/bin/env python3
from github import Github
import argparse
parser = argparse.ArgumentParser(description='Upload a set of files to a new draft release')
parser.add_argument('--token', help="Github Personal Access Token (PAT)", type=str, required=True)
parser.add_argument('--repo', help="Repository", type=str, required=True)
parser.add_argument('--tag', help="Release tag", type=str, required=True)
parser.add_argument('--name', help="Release name", type=str, required=True)
parser.add_argument('--msg', help="Release message", type=str, required=True)
parser.add_argument('files', nargs=argparse.REMAINDER)
args = parser.parse_args()
if len(args.files) == 0:
print("ERROR: No files specified")
quit()
if args.msg[0] == '@':
with open(args.msg[1:], 'r') as f:
args.msg = f.read()
gh = Github(login_or_token=args.token)
repo = gh.get_repo(str(args.repo))
release = repo.create_git_release(args.tag, args.name, args.msg, draft=True)
for fn in args.files:
print("Uploading file: " + fn)
release.upload_asset(fn)