Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(20)

Unified Diff: tools/blink_rename_merge_helper/run.py

Issue 2798293003: blink_rename_merge_helper: roll clang tool binaries in COMPONENTS (Closed)
Patch Set: Add Darwin too. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/blink_rename_merge_helper/pylib/blink_rename_merge_helper/driver.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/blink_rename_merge_helper/run.py
diff --git a/tools/blink_rename_merge_helper/run.py b/tools/blink_rename_merge_helper/run.py
index 293fc409b415528047993020bf0fcf1cd1c56150..cff45fb322cbdf2badb6ededde0106161bbfb13e 100755
--- a/tools/blink_rename_merge_helper/run.py
+++ b/tools/blink_rename_merge_helper/run.py
@@ -4,6 +4,7 @@
# found in the LICENSE file.
"""Tool to help developers rebase branches across the Blink rename."""
+import argparse
import json
import os
import subprocess
@@ -78,13 +79,16 @@ class Bootstrapper(object):
Performs update checks and stages any required binaries."""
- def __init__(self, depot_tools):
+ def __init__(self, depot_tools, components_path_override):
"""Bootstrapper constructor.
Args:
depot_tools: a wrapper for invoking depot_tools.
+ components_path_override: If set, used as the path for the COMPONENTS file
+ rather than using the copy in the Google Storage bucket.
"""
self.__depot_tools = depot_tools
+ self.__components_path_override = components_path_override
self.__tmpdir = None
def __enter__(self):
@@ -114,14 +118,21 @@ class Bootstrapper(object):
"""Fetches info about the latest components from google storage.
The return value should be a dict of component names to SHA1 hashes."""
- hashes_path = os.path.join(self.__tmpdir, 'COMPONENTS')
- self.__depot_tools.call_gsutil(
- 'cp', 'gs://chromium-blink-rename/COMPONENTS', hashes_path)
- with open(hashes_path) as f:
+ components_path = self.__components_path_override
+ if not components_path:
+ components_path = os.path.join(self.__tmpdir, 'COMPONENTS')
+ self.__depot_tools.call_gsutil(
+ 'cp', 'gs://chromium-blink-rename/COMPONENTS', components_path)
+ with open(components_path) as f:
return json.loads(f.read())
def main():
+ # Intentionally suppress help. These are internal testing flags.
+ parser = argparse.ArgumentParser(add_help=False)
+ parser.add_argument('--components-file')
+ args, remaining_argv = parser.parse_known_args()
+
script_dir = os.path.dirname(os.path.realpath(__file__))
os.chdir(script_dir)
@@ -132,13 +143,16 @@ def main():
return 1
print 'Checking for updates...'
- with Bootstrapper(depot_tools) as bootstrapper:
+ with Bootstrapper(depot_tools, args.components_file) as bootstrapper:
bootstrapper.update()
# Import stage 2 and launch it.
tool_pylib = os.path.abspath(os.path.join(script_dir, 'staging/pylib'))
sys.path.insert(0, tool_pylib)
from blink_rename_merge_helper import driver
+ # Note: for compatibility with older versions of run.py, set sys.argv to the
+ # unconsumed args.
+ sys.argv = sys.argv[:1] + remaining_argv
driver.run()
« no previous file with comments | « tools/blink_rename_merge_helper/pylib/blink_rename_merge_helper/driver.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698