python3-base/package/cli.py

35 lines
782 B
Python

import logging
import argparse
import logging
def cmd_foo(args, parser):
pass
def cmd_bar(args, parser):
pass
def get_args():
parser = argparse.ArgumentParser()
sp_action = parser.add_subparsers(dest="action", help="action to take")
p_foo = sp_action.add_parser("foo", help="foo action")
p_foo.set_defaults(func=cmd_foo)
p_foo.add_argument("-c", "--config", help="config file path")
sp_bar = sp_action.add_subparsers(dest="bar", help="bar action")
sp_bar.set_defaults(func=cmd_bar)
sp_bar.add_argument("-s", "--shutdown", action="store_true", help="shutdown on program exit")
return parser.parse_args(), parser
def main():
logging.basicConfig(level=logging.INFO)
args, parser = get_args()
args.func(args, parser)