#!/usr/bin/env python from __future__ import print_function import requests import re import os github_project = 'resin-io/etcher' releases_url = 'https://github.com/' + github_project + '/releases' aws_url = 'https://resin-production-downloads.s3.amazonaws.com/etcher' def download_file(url, filename): if os.path.exists(filename): print("%s already exists, skipping" % filename) else: print("Downloading %s" % url) r = requests.get(url, stream=True) with open(filename+'.tmp', 'wb') as f: for chunk in r.iter_content(chunk_size=10240): if chunk: f.write(chunk) os.rename(filename+'.tmp', filename) def download_releases_from(url): current_release = None for line in requests.get(url).text.split('\n'): m = re.search('(.*?)' % github_project, line) if m: assert m.group(1) == m.group(2) release = m.group(1) assert release[0] == 'v' current_release = release[1:] print("Found release %s" % release) if not os.path.exists(release): os.mkdir(release) for filename in (release + '.tar.gz', release + '.zip'): download_file('https://github.com/' + github_project + '/archive/' + filename, os.path.join(release, filename)) m = re.search('