def _parser()

in ees_microsoft_outlook/cli.py [0:0]


def _parser():
    """Get a configured parser for the module.

    This method will initialize argument parser with a list
    of avaliable commands and their options."""
    parser = ArgumentParser(prog="ees_microsoft_outlook")
    parser.add_argument(
        "-c",
        "--config-file",
        type=str,
        metavar="CONFIGURATION_FILE_PATH",
        help="path to the configuration file",
    )
    subparsers = parser.add_subparsers(dest="cmd")
    subparsers.required = True
    bootstrap = subparsers.add_parser(CMD_BOOTSTRAP)
    bootstrap.add_argument(
        "-n",
        "--name",
        required=True,
        type=str,
        metavar="CONTENT_SOURCE_NAME",
        help="Name of the content source to be created",
    )
    bootstrap.add_argument(
        "-u",
        "--user",
        required=False,
        type=str,
        metavar="ENTERPRISE_SEARCH_ADMIN_USER_NAME",
        help="Username of the Workplace Search admin account",
    )

    subparsers.add_parser(CMD_FULL_SYNC)
    subparsers.add_parser(CMD_INCREMENTAL_SYNC)
    subparsers.add_parser(CMD_PERMISSION_SYNC)
    subparsers.add_parser(CMD_DELETION_SYNC)
    return parser