From: Simon Glass Date: Tue, 29 Apr 2025 13:22:09 +0000 (-0600) Subject: patman: Tidy up the start-up code X-Git-Tag: v2025.10-rc1~118^2~69^2~69 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6e64ae22c2bbb540a8c84193578b8cf0d03f42b9;p=thirdparty%2Fu-boot.git patman: Tidy up the start-up code Much of this was written before the other Python tools and they have evolved. Make a few updates: - Rather than calling sys.exit(), return the exit code from the control module and use it in __main__ - Set up tout as it is used in some places - We now have quite a few tests, so update the comment about that Signed-off-by: Simon Glass --- diff --git a/tools/patman/__main__.py b/tools/patman/__main__.py index db78ea603c2..6aadf767eca 100755 --- a/tools/patman/__main__.py +++ b/tools/patman/__main__.py @@ -15,6 +15,7 @@ our_path = os.path.dirname(os.path.realpath(__file__)) sys.path.append(os.path.join(our_path, '..')) # Our modules +from u_boot_pylib import tout from patman import cmdline from patman import control from u_boot_pylib import test_util @@ -31,7 +32,9 @@ def run_patman(): if not args.debug: sys.tracebacklimit = 0 - # Run our meagre tests + tout.init(tout.INFO if args.verbose else tout.WARNING) + + # Run our reasonably good tests if args.cmd == 'test': # pylint: disable=C0415 from patman import func_test @@ -46,7 +49,8 @@ def run_patman(): # Process commits, produce patches files, check them, email them else: - control.do_patman(args) + exit_code = control.do_patman(args) + sys.exit(exit_code) if __name__ == "__main__": diff --git a/tools/patman/control.py b/tools/patman/control.py index 990e07f8766..a050bd2f551 100644 --- a/tools/patman/control.py +++ b/tools/patman/control.py @@ -280,18 +280,18 @@ def do_patman(args): args.ignore_bad_tags = True send(args) - # Check status of patches in patchwork - elif args.cmd == 'status': - ret_code = 0 - try: + ret_code = 0 + try: + # Check status of patches in patchwork + if args.cmd == 'status': patchwork_status(args.branch, args.count, args.start, args.end, args.dest_branch, args.force, args.show_comments, args.patchwork_url) - except Exception as exc: - terminal.tprint(f'patman: {type(exc).__name__}: {exc}', - colour=terminal.Color.RED) - if args.debug: - print() - traceback.print_exc() - ret_code = 1 - sys.exit(ret_code) + except Exception as exc: + terminal.tprint(f'patman: {type(exc).__name__}: {exc}', + colour=terminal.Color.RED) + if args.debug: + print() + traceback.print_exc() + ret_code = 1 + return ret_code