webrtc/tools_webrtc/download_tools.py
Henrik Kjellander 44ba5e577a Revert "Use subprocess2 for downloading tools."
This reverts commit 4d39dc3922.

Reason for revert: To benefit from the other fix in crbug.com/773671. Will reland once DEPS rolling is unblocked.

Original change's description:
> Use subprocess2 for downloading tools.
> 
> Change to use exactly the same approach as when gclient hooks
> are executing [1]. It should be safe since it's using the DEPS-pinned
> depot_tools in third_party. Hopefully this solves the race condition
> problems we've been seeing in crbug.com/773671
> 
> [1]: https://cs.chromium.org/chromium/tools/depot_tools/gclient.py?rcl=b3ce73d028b1d44137d533220fd41be31bc31801&l=214
> 
> Bug: chromium:773671
> Change-Id: Ia003dbca394e42556afa1a416fcb4844b960ad6c
> No-try: True
> Reviewed-on: https://webrtc-review.googlesource.com/8820
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20256}

TBR=kjellander@webrtc.org,mbonadei@webrtc.org

Change-Id: I825d291d6f723cac79a6cc6fc54cd5f9d4877152
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:773671
Reviewed-on: https://webrtc-review.googlesource.com/9080
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20263}
2017-10-13 06:06:37 +00:00

46 lines
1.3 KiB
Python
Executable file

#!/usr/bin/env python
# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
"""Downloads precompiled tools.
These are checked into the repository as SHA-1 hashes (see *.sha1 files in
subdirectories). Note that chrome-webrtc-resources is a Google-internal bucket,
so please download and compile these tools manually if this script fails.
"""
import os
import subprocess
import sys
SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
# Needed to properly resolve PATH and executable extensions on Windows.
USE_SHELL = sys.platform == 'win32'
def main(directories):
if not directories:
directories = [SCRIPT_DIR]
for path in directories:
cmd = [
'download_from_google_storage',
'--directory',
'--num_threads=10',
'--bucket', 'chrome-webrtc-resources',
'--auto_platform',
'--recursive',
path,
]
print 'Downloading precompiled tools...'
subprocess.check_call(cmd, shell=USE_SHELL)
if __name__ == '__main__':
sys.exit(main(sys.argv[1:]))