| 757 | |
| 758 | |
| 759 | def parse_kernels(subparsers) -> None: |
| 760 | parser_kernels = subparsers.add_parser( |
| 761 | "kernels", formatter_class=argparse.RawTextHelpFormatter, help=Help.group_kernels, aliases=["k"] |
| 762 | ) |
| 763 | subparsers_kernels = parser_kernels.add_subparsers(title="commands", dest="command") |
| 764 | subparsers_kernels.required = True |
| 765 | subparsers_kernels.choices = Help.kernels_choices |
| 766 | |
| 767 | # Kernels list/search |
| 768 | parser_kernels_list = subparsers_kernels.add_parser( |
| 769 | "list", formatter_class=argparse.RawTextHelpFormatter, help=Help.command_kernels_list |
| 770 | ) |
| 771 | parser_kernels_list_optional = parser_kernels_list._action_groups.pop() |
| 772 | parser_kernels_list_optional.add_argument("-m", "--mine", dest="mine", action="store_true", help=Help.param_mine) |
| 773 | parser_kernels_list_optional.add_argument("-p", "--page", dest="page", default=1, type=int, help=Help.param_page) |
| 774 | parser_kernels_list_optional.add_argument( |
| 775 | "--page-size", dest="page_size", default=20, type=int, help=Help.param_page_size |
| 776 | ) |
| 777 | parser_kernels_list_optional.add_argument("-s", "--search", dest="search", help=Help.param_search) |
| 778 | _add_output_format_args(parser_kernels_list_optional) |
| 779 | parser_kernels_list_optional.add_argument("--parent", dest="parent", required=False, help=Help.param_kernel_parent) |
| 780 | parser_kernels_list_optional.add_argument( |
| 781 | "--competition", dest="competition", required=False, help=Help.param_kernel_competition |
| 782 | ) |
| 783 | parser_kernels_list_optional.add_argument( |
| 784 | "--dataset", dest="dataset", required=False, help=Help.param_kernel_dataset |
| 785 | ) |
| 786 | parser_kernels_list_optional.add_argument("--user", dest="user", required=False, help=Help.param_kernel_user) |
| 787 | parser_kernels_list_optional.add_argument( |
| 788 | "--language", dest="language", required=False, help=Help.param_kernel_language |
| 789 | ) |
| 790 | parser_kernels_list_optional.add_argument( |
| 791 | "--kernel-type", dest="kernel_type", required=False, help=Help.param_kernel_type |
| 792 | ) |
| 793 | parser_kernels_list_optional.add_argument( |
| 794 | "--output-type", dest="output_type", required=False, help=Help.param_kernel_output_type |
| 795 | ) |
| 796 | parser_kernels_list_optional.add_argument( |
| 797 | "--sort-by", dest="sort_by", required=False, help=Help.param_kernel_sort_by |
| 798 | ) |
| 799 | parser_kernels_list._action_groups.append(parser_kernels_list_optional) |
| 800 | parser_kernels_list.set_defaults(func=api.kernels_list_cli) |
| 801 | |
| 802 | # Kernels file list |
| 803 | parser_kernels_files = subparsers_kernels.add_parser( |
| 804 | "files", formatter_class=argparse.RawTextHelpFormatter, help=Help.command_kernels_files |
| 805 | ) |
| 806 | parser_kernels_files_optional = parser_kernels_files._action_groups.pop() |
| 807 | parser_kernels_files_optional.add_argument("kernel", nargs="?", default=None, help=Help.param_kernel) |
| 808 | parser_kernels_files_optional.add_argument( |
| 809 | "-k", "--kernel", dest="kernel_opt", required=False, help=argparse.SUPPRESS |
| 810 | ) |
| 811 | _add_output_format_args(parser_kernels_files_optional) |
| 812 | parser_kernels_files_optional.add_argument("--page-token", dest="page_token", help=Help.param_page_token) |
| 813 | parser_kernels_files_optional.add_argument( |
| 814 | "--page-size", dest="page_size", default=20, type=int, help=Help.param_page_size |
| 815 | ) |
| 816 | parser_kernels_files._action_groups.append(parser_kernels_files_optional) |