Add script to apply a patch from rietveld.
At the moment it just fetches the patch. It's still useful to debug rietveld issues. Improve resiliency to invalid patches. R=dpranke@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/6825085 git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@81305 0039d316-1c4b-4281-b951-d872f2087c98experimental/szager/collated-output
parent
4a982271a7
commit
61e0b691d6
@ -0,0 +1,62 @@
|
||||
#!/usr/bin/env python
|
||||
# Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
"""Applies an issue from Rietveld.
|
||||
"""
|
||||
|
||||
import logging
|
||||
import optparse
|
||||
import sys
|
||||
|
||||
import breakpad # pylint: disable=W0611
|
||||
import fix_encoding
|
||||
import rietveld
|
||||
|
||||
|
||||
def main():
|
||||
parser = optparse.OptionParser(description=sys.modules[__name__].__doc__)
|
||||
parser.add_option(
|
||||
'-v', '--verbose', action='count', help='Prints debugging infos')
|
||||
parser.add_option(
|
||||
'-i', '--issue', type='int', help='Rietveld issue number')
|
||||
parser.add_option(
|
||||
'-p', '--patchset', type='int', help='Rietveld issue\'s patchset number')
|
||||
parser.add_option(
|
||||
'-r',
|
||||
'--root_dir',
|
||||
action='store',
|
||||
help='Root directory to apply the patch')
|
||||
parser.add_option(
|
||||
'-s',
|
||||
'--server',
|
||||
action='store',
|
||||
default='http://codereview.chromium.org',
|
||||
help='Rietveld server')
|
||||
options, args = parser.parse_args()
|
||||
LOG_FORMAT = '%(levelname)s %(filename)s(%(lineno)d): %(message)s'
|
||||
if not options.verbose:
|
||||
logging.basicConfig(level=logging.WARNING, format=LOG_FORMAT)
|
||||
elif options.verbose == 1:
|
||||
logging.basicConfig(level=logging.INFO, format=LOG_FORMAT)
|
||||
elif options.verbose > 1:
|
||||
logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT)
|
||||
if args:
|
||||
parser.error('Extra argument(s) "%s" not understood' % ' '.join(args))
|
||||
if not options.issue:
|
||||
parser.error('Require --issue')
|
||||
|
||||
obj = rietveld.Rietveld(options.server, None, None)
|
||||
|
||||
if not options.patchset:
|
||||
options.patchset = obj.get_issue_properties(
|
||||
options.issue, False)['patchsets'][-1]
|
||||
logging.info('Using patchset %d' % options.patchset)
|
||||
obj.get_patch(options.issue, options.patchset)
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
fix_encoding.fix_encoding()
|
||||
sys.exit(main())
|
Loading…
Reference in New Issue