From bfb1ddb628ed1bea06d6eba5c6cc7a1c71abf5af Mon Sep 17 00:00:00 2001 From: Doug Anderson Date: Mon, 3 Dec 2012 14:08:17 +0000 Subject: pwclient: Add command for printing patch info This command prints raw information that patchwork has about a patch. This can be useful for debugging problems with patchwork. Signed-off-by: Doug Anderson Signed-off-by: Jeremy Kerr --- apps/patchwork/bin/pwclient | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'apps/patchwork/bin/pwclient') diff --git a/apps/patchwork/bin/pwclient b/apps/patchwork/bin/pwclient index 9588615..e642195 100755 --- a/apps/patchwork/bin/pwclient +++ b/apps/patchwork/bin/pwclient @@ -113,6 +113,7 @@ def usage(): """ apply : Apply a patch (in the current dir, using -p1) git-am : Apply a patch to current git branch using "git am" get : Download a patch and save it locally + info : Display patchwork info about a given patch ID projects : List all projects states : Show list of potential patch states list [str] : List patches, using the optional filters specified @@ -224,6 +225,14 @@ def action_states(rpc): for state in states: print("%-5d %s" % (state['id'], state['name'])) +def action_info(rpc, patch_id): + patch = rpc.patch_get(patch_id) + s = "Information for patch id %d" % (patch_id) + print(s) + print('-' * len(s)) + for key, value in sorted(patch.iteritems()): + print("- %- 14s: %s" % (key, value)) + def action_get(rpc, patch_id): patch = rpc.patch_get(patch_id) s = rpc.patch_get_mbox(patch_id) @@ -443,14 +452,17 @@ def main(): if len(s) > 0: print unicode(s).encode("utf-8") - elif action == 'get' or action == 'save': + elif action in ('get', 'save', 'info'): try: patch_id = patch_id or int(args[0]) except: sys.stderr.write("Invalid patch ID given\n") sys.exit(1) - action_get(rpc, patch_id) + if action == 'info': + action_info(rpc, patch_id) + else: + action_get(rpc, patch_id) elif action == 'apply': try: -- cgit v1.2.3