diff options
author | Aleksander Mistewicz <a.mistewicz@samsung.com> | 2016-11-04 11:05:36 +0100 |
---|---|---|
committer | Aleksander Mistewicz <a.mistewicz@samsung.com> | 2017-01-16 11:07:48 +0100 |
commit | e54b9b8fc5197c32d02cfab7a17e30effe3b20df (patch) | |
tree | 3a44982e21335c2be5268b75e8ffbfc169aeb546 /tsp | |
parent | 3c368184c138a3c0268aedae3f24edace66deae4 (diff) | |
download | major-e54b9b8fc5197c32d02cfab7a17e30effe3b20df.tar.gz major-e54b9b8fc5197c32d02cfab7a17e30effe3b20df.tar.bz2 major-e54b9b8fc5197c32d02cfab7a17e30effe3b20df.zip |
Add --map argument to tsp/scripts/download_all.py
Add tsp/image_map.example
Change-Id: Ic35154314076253696e20972835adb0e4d97a48b
Signed-off-by: Aleksander Mistewicz <a.mistewicz@samsung.com>
Diffstat (limited to 'tsp')
-rw-r--r-- | tsp/image_map.example | 10 | ||||
-rwxr-xr-x | tsp/scripts/download_all.py | 31 |
2 files changed, 35 insertions, 6 deletions
diff --git a/tsp/image_map.example b/tsp/image_map.example new file mode 100644 index 0000000..1c81982 --- /dev/null +++ b/tsp/image_map.example @@ -0,0 +1,10 @@ +boot-armv7l-odroidu3 +wayland-3parts-armv7l-odroidu3 +boot-armv7l-artik5 +boot-armv7l-artik10 +headless-3parts-armv7l-artik +wayland-3parts-armv7l-artik +emulator-wayland-mbr-i586 +wayland-efi-i586 +wayland-efi-x86_64 +minimal-mbr-x86_64 diff --git a/tsp/scripts/download_all.py b/tsp/scripts/download_all.py index 82c06f2..feb0656 100755 --- a/tsp/scripts/download_all.py +++ b/tsp/scripts/download_all.py @@ -238,9 +238,10 @@ class Downloader(threading.Thread): class ImageDownloader(object): - def __init__(self, url, dry): + def __init__(self, url, dry, mapping=None): self.url = url self.dry = dry + self.mapping = mapping self.img_ver = ImageVersion(url) self.diff_report_filename = "diff.report" @@ -270,10 +271,25 @@ class ImageDownloader(object): work = threading.Event() work.set() signal.signal(signal.SIGINT, handler) - for url in self.urls: - dwn = Downloader(work, self.img_ver, s, url) - dwn.start() - downloaders.add(dwn) + + if self.mapping: + with open(self.mapping, 'r') as f: + mapped = f.read().splitlines() + logging.debug(mapped) + + for url in self.urls: + for image in mapped: + if image in url: + dwn = Downloader(work, self.img_ver, s, url) + dwn.start() + downloaders.add(dwn) + break + else: + for url in self.urls: + dwn = Downloader(work, self.img_ver, s, url) + dwn.start() + downloaders.add(dwn) + for dwn in downloaders: dwn.join() @@ -292,6 +308,9 @@ def parse_arguments(): parser.add_argument("url", metavar='<url>', type=str, help='URL of prerelease or snapshot to download images from.') + parser.add_argument("-m", "--map", type=str, + help='Path to file with list of images to download') + parser.add_argument("-d", "--dry-run", action="store_true", dest="dry", help="Dry run - do not actually download images") @@ -312,7 +331,7 @@ def main(): raise ValueError('Invalid log level: %s' % args.loglevel) logging.basicConfig(format='%(asctime)s %(message)s',level=numeric_level) logging.debug("Begin") - ImageDownloader(args.url, args.dry) + ImageDownloader(args.url, args.dry, mapping=args.map) logging.debug("End") if __name__ == '__main__': |