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

Unified Diff: tools/roll_webrtc.py

Issue 1182263002: Port Windows changes from roll_angle.py to roll_webrtc.py. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed review feedback from geofflang. Removed unnecessary message lines. Created 5 years, 6 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 | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/roll_webrtc.py
diff --git a/tools/roll_webrtc.py b/tools/roll_webrtc.py
index 0a6c00bc2240d477853029aeb856b48b329cc0c9..4a36bfe29c86fffb8d8d88541a7a0f805340da6b 100755
--- a/tools/roll_webrtc.py
+++ b/tools/roll_webrtc.py
@@ -33,10 +33,10 @@ ROLL_BRANCH_NAME = 'special_webrtc_roll_branch'
TRYJOB_STATUS_SLEEP_SECONDS = 30
# Use a shell for subcommands on Windows to get a PATH search.
-USE_SHELL = sys.platform.startswith('win')
-WEBRTC_PATH = 'third_party/webrtc'
-LIBJINGLE_PATH = 'third_party/libjingle/source/talk'
-LIBJINGLE_README = 'third_party/libjingle/README.chromium'
+IS_WIN = sys.platform.startswith('win')
+WEBRTC_PATH = os.path.join('third_party', 'webrtc')
+LIBJINGLE_PATH = os.path.join('third_party', 'libjingle', 'source', 'talk')
+LIBJINGLE_README = os.path.join('third_party', 'libjingle', 'README.chromium')
# Result codes from build/third_party/buildbot_8_4p1/buildbot/status/results.py
# plus the -1 code which is used when there's no result yet.
@@ -58,6 +58,12 @@ CommitInfo = collections.namedtuple('CommitInfo', ['commit_position',
CLInfo = collections.namedtuple('CLInfo', ['issue', 'url', 'rietveld_server'])
+def _PosixPath(path):
+ """Convert a possibly-Windows path to a posix-style path."""
+ (_, path) = os.path.splitdrive(path)
+ return path.replace(os.sep, '/')
+
+
def _ParseGitCommitPosition(description):
for line in reversed(description.splitlines()):
m = COMMIT_POSITION_RE.match(line.strip())
@@ -145,8 +151,8 @@ def _PrintTrybotsStatus(tryjob_results):
print '%s: %s' % (status, ','.join(sorted(name_list)))
-def _GenerateCLDescription(webrtc_current, libjingle_current,
- webrtc_new, libjingle_new):
+def _GenerateCLDescriptionCommand(webrtc_current, libjingle_current,
+ webrtc_new, libjingle_new):
delim = ''
webrtc_str = ''
def GetChangeLogURL(git_repo_url, current_hash, new_hash):
@@ -169,14 +175,14 @@ def _GenerateCLDescription(webrtc_current, libjingle_current,
libjingle_current.git_commit,
libjingle_new.git_commit)
- description = 'Roll ' + webrtc_str + delim + libjingle_str + '\n\n'
+ description = [ '-m', 'Roll ' + webrtc_str + delim + libjingle_str ]
if webrtc_str:
- description += webrtc_str + '\n'
- description += 'Changes: %s\n\n' % webrtc_changelog_url
+ description.extend(['-m', webrtc_str])
+ description.extend(['-m', 'Changes: %s' % webrtc_changelog_url])
if libjingle_str:
- description += libjingle_str + '\n'
- description += 'Changes: %s\n' % libjingle_changelog_url
- description += '\nTBR='
+ description.extend(['-m', libjingle_str])
+ description.extend(['-m', 'Changes: %s' % libjingle_changelog_url])
+ description.extend(['-m', 'TBR='])
return description
@@ -197,7 +203,7 @@ class AutoRoller(object):
logging.debug('extra env: %s', extra_env)
env.update(extra_env)
p = subprocess.Popen(command, stdout=subprocess.PIPE,
- stderr=subprocess.PIPE, shell=USE_SHELL, env=env,
+ stderr=subprocess.PIPE, shell=IS_WIN, env=env,
cwd=working_dir, universal_newlines=True)
output = p.stdout.read()
p.wait()
@@ -220,7 +226,7 @@ class AutoRoller(object):
git_repo_url)
def _GetDepsCommitInfo(self, deps_dict, path_below_src):
- entry = deps_dict['deps']['src/%s' % path_below_src]
+ entry = deps_dict['deps'][_PosixPath('src/%s' % path_below_src)]
at_index = entry.find('@')
git_repo_url = entry[:at_index]
git_hash = entry[at_index + 1:]
@@ -298,6 +304,10 @@ class AutoRoller(object):
webrtc_latest = self._GetCommitInfo(WEBRTC_PATH)
libjingle_latest = self._GetCommitInfo(LIBJINGLE_PATH)
+ if IS_WIN:
+ # Make sure the roll script doesn't use Windows line endings.
+ self._RunCommand(['git', 'config', 'core.autocrlf', 'true'])
+
self._UpdateDep(deps_filename, WEBRTC_PATH, webrtc_latest)
self._UpdateDep(deps_filename, LIBJINGLE_PATH, libjingle_latest)
@@ -306,13 +316,13 @@ class AutoRoller(object):
self._DeleteRollBranch()
else:
self._UpdateReadmeFile(LIBJINGLE_README, libjingle_latest.commit_position)
- description = _GenerateCLDescription(webrtc_current, libjingle_current,
- webrtc_latest, libjingle_latest)
+ description = _GenerateCLDescriptionCommand(
+ webrtc_current, libjingle_current, webrtc_latest, libjingle_latest)
logging.debug('Committing changes locally.')
self._RunCommand(['git', 'add', '--update', '.'])
- self._RunCommand(['git', 'commit', '-m', description])
+ self._RunCommand(['git', 'commit'] + description)
logging.debug('Uploading changes...')
- self._RunCommand(['git', 'cl', 'upload', '-m', description],
+ self._RunCommand(['git', 'cl', 'upload'],
extra_env={'EDITOR': 'true'})
cl_info = self._GetCLInfo()
logging.debug('Issue: %d URL: %s', cl_info.issue, cl_info.url)
@@ -385,10 +395,6 @@ class AutoRoller(object):
def main():
- if sys.platform in ('win32', 'cygwin'):
- logging.error('Only Linux and Mac platforms are supported right now.')
- return -1
-
parser = argparse.ArgumentParser(
description='Find webrtc and libjingle revisions for roll.')
parser.add_argument('--abort',
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698