def main(): args = ArgumentParser('avalon') command = args.add_subparsers() cmd = command.add_parser('init', help='create a project') cmd.add_argument('folder', action='store', help='project folder') cmd.set_defaults(func=init) cmd = command.add_parser('serve', help='serve project') cmd.add_argument('-p', dest='port', help='port', default=None) cmd.add_argument('--local', dest='cdn', action='store_false', default=None, help='do not use cdn') cmd.add_argument('-v', dest='verbose', action='store_true', help='verbose') cmd.set_defaults(func=serve) args = args.parse_args() args.func(args)