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)
评论列表
文章目录