cli.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:openshift-restclient-python 作者: openshift 项目源码 文件源码
def commandline():
    """
    Entrypoint for openshift-ansible-gen

    :return: None
    """
    parser = argparse.ArgumentParser(description=u'Uses the OpenShift API models to generate Ansible artifacts')
    parser.add_argument('--debug', action='store_true', dest='debug',
                        help=u'enable debug output', default=False)

    subparsers = parser.add_subparsers(title='subcommand', dest='subcommand')
    subparsers.required = True
    for subcommand in AVAILABLE_COMMANDS:
        if globals().get('subcmd_%s_parser' % subcommand):
            subparser = subparsers.add_parser(subcommand, help=AVAILABLE_COMMANDS[subcommand])
            globals()['subcmd_%s_parser' % subcommand](parser, subparser)

    args = parser.parse_args()

    if args.debug:
        # enable debug output
        LOGGING['loggers']['openshift.ansiblegen']['level'] = 'DEBUG'

    config.dictConfig(LOGGING)

    if args.subcommand == 'help':
        parser.print_help()
        sys.exit(0)
    elif args.subcommand == 'version':
        logger.info("{0} version is {1}".format(__name__, __version__))
        sys.exit(0)
    elif args.subcommand == 'modules':
        if args.suppress_stdout:
            # disable output
            LOGGING['loggers']['openshift.ansiblegen']['level'] = 'CRITICAL'

    try:
        globals()['run_{}_cmd'.format(args.subcommand)](**vars(args))
    except Exception:
        raise
    sys.exit(0)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号