blob: b1364a612bb7d36898bce115025ef230e5e40397 [file] [log] [blame]
Eric Snow345cd372020-10-22 18:42:51 -06001from cpython.__main__ import main, configure_logger
Eric Snow2ebc5ce2017-09-07 23:51:28 -06002
Eric Snow2ebc5ce2017-09-07 23:51:28 -06003
Eric Snow345cd372020-10-22 18:42:51 -06004def parse_args():
Eric Snow2ebc5ce2017-09-07 23:51:28 -06005 import argparse
Eric Snow345cd372020-10-22 18:42:51 -06006 from c_common.scriptutil import (
7 add_verbosity_cli,
8 add_traceback_cli,
9 process_args_by_key,
10 )
11 from cpython.__main__ import _cli_check
Eric Snow2ebc5ce2017-09-07 23:51:28 -060012 parser = argparse.ArgumentParser()
Eric Snow345cd372020-10-22 18:42:51 -060013 processors = [
14 add_verbosity_cli(parser),
15 add_traceback_cli(parser),
16 _cli_check(parser, checks='<globals>'),
17 ]
Eric Snow2ebc5ce2017-09-07 23:51:28 -060018
Eric Snow345cd372020-10-22 18:42:51 -060019 args = parser.parse_args()
20 ns = vars(args)
Eric Snow2ebc5ce2017-09-07 23:51:28 -060021
Eric Snow345cd372020-10-22 18:42:51 -060022 cmd = 'check'
23 verbosity, traceback_cm = process_args_by_key(
24 args,
Eric Snow7ec59d82020-12-24 11:04:19 -070025 argv,
Eric Snow345cd372020-10-22 18:42:51 -060026 processors,
27 ['verbosity', 'traceback_cm'],
28 )
Eric Snow2ebc5ce2017-09-07 23:51:28 -060029
Eric Snow345cd372020-10-22 18:42:51 -060030 return cmd, ns, verbosity, traceback_cm
Eric Snow2ebc5ce2017-09-07 23:51:28 -060031
32
Eric Snow345cd372020-10-22 18:42:51 -060033(cmd, cmd_kwargs, verbosity, traceback_cm) = parse_args()
34configure_logger(verbosity)
35with traceback_cm:
36 main(cmd, cmd_kwargs)