summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2008-09-10 12:03:50 +1000
committerJeremy Kerr <jk@ozlabs.org>2008-09-10 12:03:50 +1000
commit37daad345da4d72bf359c6fbde4eb225f6bf5994 (patch)
treeccdd4d1e8e8161cf815d931ba2ca9dadafda9650
parenta2d3b37e2fb9255486cdfdab13646cc9814eef97 (diff)
downloadpatchwork-37daad345da4d72bf359c6fbde4eb225f6bf5994.tar.bz2
patchwork-37daad345da4d72bf359c6fbde4eb225f6bf5994.tar.xz
Make parser.py invokation a little more flexible
Add options to control output, allowing us to use the parser to generate patch hashes. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
-rw-r--r--apps/patchwork/parser.py30
1 files changed, 25 insertions, 5 deletions
diff --git a/apps/patchwork/parser.py b/apps/patchwork/parser.py
index 8ed36cc..abec782 100644
--- a/apps/patchwork/parser.py
+++ b/apps/patchwork/parser.py
@@ -205,11 +205,31 @@ def hash_patch(str):
return hash
-if __name__ == '__main__':
- import sys
+
+def main(args):
+ from optparse import OptionParser
+
+ parser = OptionParser()
+ parser.add_option('-p', '--patch', action = 'store_true',
+ dest = 'print_patch', help = 'print parsed patch')
+ parser.add_option('-c', '--comment', action = 'store_true',
+ dest = 'print_comment', help = 'print parsed comment')
+ parser.add_option('-#', '--hash', action = 'store_true',
+ dest = 'print_hash', help = 'print patch hash')
+
+ (options, args) = parser.parse_args()
+
(patch, comment) = parse_patch(sys.stdin.read())
- if patch:
+
+ if options.print_hash and patch:
+ print hash_patch(patch).hexdigest()
+
+ if options.print_patch and patch:
print "Patch: ------\n" + patch
- print "hash: %s" % hash_patch(patch).hexdigest()
- if comment:
+
+ if options.print_comment and comment:
print "Comment: ----\n" + comment
+
+if __name__ == '__main__':
+ import sys
+ sys.exit(main(sys.argv))