| Index: recipe_modules/bot_update/resources/bot_update.py
|
| diff --git a/recipe_modules/bot_update/resources/bot_update.py b/recipe_modules/bot_update/resources/bot_update.py
|
| index ab71dd4a9a5bf7feff021eb0b125643d9bb2aaa0..2323f4c4b14b57c88eb9f075a09acf31896a9e3d 100755
|
| --- a/recipe_modules/bot_update/resources/bot_update.py
|
| +++ b/recipe_modules/bot_update/resources/bot_update.py
|
| @@ -555,7 +555,8 @@ def _download(url):
|
|
|
|
|
| def apply_rietveld_issue(issue, patchset, root, server, _rev_map, _revision,
|
| - email_file, key_file, whitelist=None, blacklist=None):
|
| + email_file, key_file, oauth2_file,
|
| + whitelist=None, blacklist=None):
|
| apply_issue_bin = ('apply_issue.bat' if sys.platform.startswith('win')
|
| else 'apply_issue')
|
| cmd = [apply_issue_bin,
|
| @@ -570,8 +571,10 @@ def apply_rietveld_issue(issue, patchset, root, server, _rev_map, _revision,
|
| # Don't run gclient sync when it sees a DEPS change.
|
| '--ignore_deps',
|
| ]
|
| - # Use an oauth key file if specified.
|
| - if email_file and key_file:
|
| + # Use an oauth key or json file if specified.
|
| + if oauth2_file:
|
| + cmd.extend(['--auth-refresh-token-json', oauth2_file])
|
| + elif email_file and key_file:
|
| cmd.extend(['--email-file', email_file, '--private-key-file', key_file])
|
| else:
|
| cmd.append('--no-auth')
|
| @@ -714,8 +717,9 @@ def ensure_deps_revisions(deps_url_mapping, solutions, revisions):
|
| def ensure_checkout(solutions, revisions, first_sln, target_os, target_os_only,
|
| patch_root, issue, patchset, rietveld_server, gerrit_repo,
|
| gerrit_ref, gerrit_rebase_patch_ref, revision_mapping,
|
| - apply_issue_email_file, apply_issue_key_file, shallow, refs,
|
| - git_cache_dir, gerrit_reset):
|
| + apply_issue_email_file, apply_issue_key_file,
|
| + apply_issue_oauth2_file, shallow, refs, git_cache_dir,
|
| + gerrit_reset):
|
| # Get a checkout of each solution, without DEPS or hooks.
|
| # Calling git directly because there is no way to run Gclient without
|
| # invoking DEPS.
|
| @@ -738,7 +742,8 @@ def ensure_checkout(solutions, revisions, first_sln, target_os, target_os_only,
|
| if issue:
|
| apply_rietveld_issue(issue, patchset, patch_root, rietveld_server,
|
| revision_mapping, git_ref, apply_issue_email_file,
|
| - apply_issue_key_file, whitelist=[target])
|
| + apply_issue_key_file, apply_issue_oauth2_file,
|
| + whitelist=[target])
|
| already_patched.append(target)
|
| elif gerrit_ref:
|
| apply_gerrit_ref(gerrit_repo, gerrit_ref, patch_root, gerrit_reset,
|
| @@ -765,8 +770,9 @@ def ensure_checkout(solutions, revisions, first_sln, target_os, target_os_only,
|
| # Apply the rest of the patch here (sans DEPS)
|
| if issue:
|
| apply_rietveld_issue(issue, patchset, patch_root, rietveld_server,
|
| - revision_mapping, git_ref, apply_issue_email_file,
|
| - apply_issue_key_file, blacklist=already_patched)
|
| + revision_mapping, apply_issue_oauth2_file, git_ref,
|
| + apply_issue_email_file, apply_issue_key_file,
|
| + blacklist=already_patched)
|
| elif gerrit_ref and not applied_gerrit_patch:
|
| # If gerrit_ref was for solution's main repository, it has already been
|
| # applied above. This chunk is executed only for patches to DEPS-ed in
|
| @@ -835,6 +841,9 @@ def parse_args():
|
| parse.add_option('--apply_issue_key_file',
|
| help='--private-key-file option passthrough for '
|
| 'apply_patch.py.')
|
| + parse.add_option('--apply_issue_oauth2_file',
|
| + help='--auth-refresh-token-json option passthrough for '
|
| + 'apply_patch.py.')
|
| parse.add_option('--root', dest='patch_root',
|
| help='DEPRECATED: Use --patch_root.')
|
| parse.add_option('--patch_root', help='Directory to patch on top of.')
|
| @@ -972,6 +981,7 @@ def checkout(options, git_slns, specs, revisions, step_text, shallow):
|
| revision_mapping=options.revision_mapping,
|
| apply_issue_email_file=options.apply_issue_email_file,
|
| apply_issue_key_file=options.apply_issue_key_file,
|
| + apply_issue_oauth2_file=options.apply_issue_oauth2_file,
|
|
|
| # Finally, extra configurations such as shallowness of the clone.
|
| shallow=shallow,
|
|
|