From e8a06741465702163977c638c5d11ff4419e7c75 Mon Sep 17 00:00:00 2001 From: emkael Date: Fri, 23 Feb 2018 16:34:18 +0100 Subject: Converting command line argument parsing to argparse --- playoff.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'playoff.py') diff --git a/playoff.py b/playoff.py index c335b55..a88d151 100644 --- a/playoff.py +++ b/playoff.py @@ -7,8 +7,24 @@ from jfr_playoff.settings import PlayoffSettings def main(): + interactive = False + try: - settings = PlayoffSettings() + import argparse + arg_parser = argparse.ArgumentParser( + description='Generate play-off HTML for JFR Teamy tournaments') + output_args = arg_parser.add_mutually_exclusive_group() + output_args.add_argument('-v', '--verbose', action='store_true', + help='display debug info on STDERR') + output_args.add_argument('-q', '--quiet', action='store_true', + help='suppress warnings on STDERR') + arg_parser.add_argument('config_file', metavar='JSON_FILE', + help='path to config JSON file', + type=str, nargs='?', default=None) + arguments = arg_parser.parse_args() + + settings = PlayoffSettings(arguments.config_file) + interactive = settings.interactive generator = PlayoffGenerator(settings) content = generator.generate_content() @@ -17,10 +33,13 @@ def main(): file_manager.write_content(content) file_manager.copy_scripts() file_manager.send_files() + except SystemExit: + interactive = False + raise except: print traceback.format_exc() finally: - if settings.interactive: + if interactive: raw_input('Press any key to continue...') if __name__ == '__main__': -- cgit v1.2.3