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

Unified Diff: tools/add_codereview_message.py

Issue 330423004: Use new common tools in Python scripts (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: append Created 6 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 | « PRESUBMIT.py ('k') | tools/fix_pythonpath.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/add_codereview_message.py
diff --git a/tools/add_codereview_message.py b/tools/add_codereview_message.py
index 6710390ac1bba25078d4bd25e5d2bed522e20028..a7c53a9a5e3ab11cd5c8fc3a8deb256506ab0bd3 100755
--- a/tools/add_codereview_message.py
+++ b/tools/add_codereview_message.py
@@ -7,14 +7,12 @@
"""Add message to codereview issue.
-This script takes a codereview URL or a codereview issue number as its
-argument and a (possibly multi-line) message on stdin. It then calls
-`git cl upload` to append the message to the given codereview issue.
+This script takes a codereview issue number as its argument and a (possibly
+multi-line) message on stdin. It appends the message to the given issue.
Usage:
- echo MESSAGE | %prog -c CHECKOUT_PATH CODEREVIEW_ISSUE
+ echo MESSAGE | %prog CODEREVIEW_ISSUE
or:
- cd /path/to/git/checkout
%prog CODEREVIEW_ISSUE <<EOF
MESSAGE
EOF
@@ -23,77 +21,29 @@ or:
"""
import optparse
-import os
import sys
-import git_utils
-import misc_utils
+import fix_pythonpath # pylint: disable=W0611
+from common.py.utils import find_depot_tools # pylint: disable=W0611
+import rietveld
-DEFAULT_REVIEWERS = ','.join([
- 'rmistry@google.com',
- 'reed@google.com',
- 'bsalomon@google.com',
- 'robertphillips@google.com',
- ])
+RIETVELD_URL = 'https://codereview.chromium.org'
-DEFAULT_CC_LIST = ','.join([
- 'skia-team@google.com',
- ])
-
-
-def add_codereview_message(codereview_url, message, checkout_path,
- skip_cl_upload, verbose, reviewers, cclist):
+def add_codereview_message(issue, message):
"""Add a message to a given codereview.
Args:
codereview_url: (string) we will extract the issue number from
this url, or this could simply be the issue number.
- message: (string) will be passed to `git cl upload -m $MESSAGE`
- checkout_path: (string) location of the git
- repository checkout to be used.
- skip_cl_upload: (boolean) if true, don't actually
- add the message and keep the temporary branch around.
- verbose: (boolean) print out details useful for debugging.
- reviewers: (string) comma-separated list of reviewers
- cclist: (string) comma-separated list of addresses to be
- carbon-copied
+ message: (string) message to add.
"""
- # pylint: disable=I0011,R0913
- git = git_utils.git_executable()
- issue = codereview_url.strip('/').split('/')[-1]
- vsp = misc_utils.VerboseSubprocess(verbose)
- if skip_cl_upload:
- branch_name = 'issue_%s' % issue
- else:
- branch_name = None
- upstream = 'origin/master'
-
- with misc_utils.ChangeDir(checkout_path, verbose):
- vsp.check_call([git, 'fetch', '-q', 'origin'])
-
- with git_utils.ChangeGitBranch(branch_name, upstream, verbose):
- vsp.check_call([git, 'cl', 'patch', issue])
-
- git_upload = [
- git, 'cl', 'upload', '-t', 'bot report', '-m', message]
- if cclist:
- git_upload.append('--cc=' + cclist)
- if reviewers:
- git_upload.append('--reviewers=' + reviewers)
-
- if skip_cl_upload:
- branch_name = git_utils.git_branch_name(verbose)
- space = ' '
- print 'You should call:'
- misc_utils.print_subprocess_args(space, ['cd', os.getcwd()])
- misc_utils.print_subprocess_args(
- space, [git, 'checkout', branch_name])
- misc_utils.print_subprocess_args(space, git_upload)
- else:
- vsp.check_call(git_upload)
- print vsp.check_output([git, 'cl', 'issue'])
+ # Passing None for the email and password will result in a prompt or
+ # reuse of existing cached credentials.
+ my_rietveld = rietveld.Rietveld(RIETVELD_URL, email=None, password=None)
+
+ my_rietveld.add_comment(issue, message)
def main(argv):
@@ -103,44 +53,15 @@ def main(argv):
argv: sys.argv[1:]-type argument list.
"""
option_parser = optparse.OptionParser(usage=__doc__)
- option_parser.add_option(
- '-c', '--checkout_path',
- default=os.curdir,
- help='Path to the Git repository checkout,'
- ' defaults to current working directory.')
- option_parser.add_option(
- '', '--skip_cl_upload', action='store_true', default=False,
- help='Skip the cl upload step; useful for testing.')
- option_parser.add_option(
- '', '--verbose', action='store_true', dest='verbose', default=False,
- help='Do not suppress the output from `git cl`.',)
- option_parser.add_option(
- '', '--git_path', default='git',
- help='Git executable, defaults to "git".',)
- option_parser.add_option(
- '', '--reviewers', default=DEFAULT_REVIEWERS,
- help=('Comma-separated list of reviewers. Default is "%s".'
- % DEFAULT_REVIEWERS))
- option_parser.add_option(
- '', '--cc', default=DEFAULT_CC_LIST,
- help=('Comma-separated list of addresses to be carbon-copied.'
- ' Default is "%s".' % DEFAULT_CC_LIST))
-
- options, arguments = option_parser.parse_args(argv)
-
- if not options.checkout_path:
- option_parser.error('Must specify checkout_path.')
- if not git_utils.git_executable():
- option_parser.error('Invalid git executable.')
+ _, arguments = option_parser.parse_args(argv)
+
if len(arguments) > 1:
option_parser.error('Extra arguments.')
if len(arguments) != 1:
- option_parser.error('Missing Codereview URL.')
+ option_parser.error('Missing issue number.')
message = sys.stdin.read()
- add_codereview_message(arguments[0], message, options.checkout_path,
- options.skip_cl_upload, options.verbose,
- options.reviewers, options.cc)
+ add_codereview_message(int(arguments[0]), message)
if __name__ == '__main__':
« no previous file with comments | « PRESUBMIT.py ('k') | tools/fix_pythonpath.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698