You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#!/usr/bin/env python3
import json import sys import hashlib import os.path
if len(sys.argv) <= 1: print('Specify the version number as parameter') sys.exit() version = sys.argv[1]
with open('update/LATEST_VERSION', 'w') as f: f.write(version)
versions_info = json.load(open('update/versions.json')) if 'signature' in versions_info: del versions_info['signature']
new_version = {}
filenames = { 'bin': 'youtube-dl', 'exe': 'youtube-dl.exe', 'tar': 'youtube-dl-%s.tar.gz' % version} build_dir = os.path.join('..', '..', 'build', version) for key, filename in filenames.items(): url = 'https://yt-dl.org/downloads/%s/%s' % (version, filename) fn = os.path.join(build_dir, filename) with open(fn, 'rb') as f: data = f.read() if not data: raise ValueError('File %s is empty!' % fn) sha256sum = hashlib.sha256(data).hexdigest() new_version[key] = (url, sha256sum)
versions_info['versions'][version] = new_version versions_info['latest'] = version
with open('update/versions.json', 'w') as jsonf: json.dump(versions_info, jsonf, indent=4, sort_keys=True)
|