Use subprocess2 and DEPS-pinned depot_tools for download_tools.py

As https://webrtc.googlesource.com/src/+/915187b1afe8f708b06e24b77f372dcd34fe75f3
has the proper fixed rolled in, https://webrtc-review.googlesource.com/c/src/+/8820
can be relanded to benefit from using DEPS-pinned third_party/depot_tools instead
of the auto-updated one.

TBR=mbonadei@webrtc.org

Bug: chromium:773671, webrtc:8393
Change-Id: Id47671956d014ce24e5b60ce3aae5423930db1aa
No-try: True
Reviewed-on: https://webrtc-review.googlesource.com/10800
Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20301}
This commit is contained in:
Henrik Kjellander
2017-10-15 19:51:55 +02:00
committed by Commit Bot
parent 589ae45d0f
commit a254304281

View File

@ -15,13 +15,17 @@ 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'
SRC_DIR = os.path.abspath(os.path.join(SCRIPT_DIR, os.pardir))
DEPOT_TOOLS_DIR = os.path.join(SRC_DIR, 'third_party', 'depot_tools')
sys.path.insert(0, DEPOT_TOOLS_DIR)
import gclient_utils
import subprocess2
def main(directories):
@ -30,7 +34,8 @@ def main(directories):
for path in directories:
cmd = [
'download_from_google_storage',
sys.executable,
os.path.join(DEPOT_TOOLS_DIR, 'download_from_google_storage.py'),
'--directory',
'--num_threads=10',
'--bucket', 'chrome-webrtc-resources',
@ -39,7 +44,14 @@ def main(directories):
path,
]
print 'Downloading precompiled tools...'
subprocess.check_call(cmd, shell=USE_SHELL)
# Perform download similar to how gclient hooks execute.
try:
gclient_utils.CheckCallAndFilterAndHeader(cmd, cwd=SRC_DIR, always=True)
except (gclient_utils.Error, subprocess2.CalledProcessError) as e:
print 'Error: %s' % str(e)
return 2
return 0
if __name__ == '__main__':