def _add_script_args()

in tools/config2kv.py [0:0]


def _add_script_args(description):
    parser = argparse.ArgumentParser(
        description=description, formatter_class=argparse.RawDescriptionHelpFormatter
    )
    parser.add_argument(
        "--path",
        "-p",
        required=False,
        help="Path to msticpyconfig.yaml. Defaults to using MSTICPYCONFIG env variable.",
    )
    parser.add_argument(
        "--vault", "-v", help="Vault name. Default taken from msticpyconfig.yaml"
    )
    parser.add_argument(
        "--tenant",
        "-t",
        help="Tenant name or ID. Default taken from msticpyconfig.yaml",
    )
    parser.add_argument(
        "--sub", "-s", help="Subscription ID. Default taken from msticpyconfig.yaml"
    )
    parser.add_argument(
        "--group",
        "-g",
        help=(
            "Resource Group name. Default taken from msticpyconfig.yaml"
            + "(only needed if creating new vault.)"
        ),
    )
    parser.add_argument(
        "--region",
        "-r",
        help=(
            "Azure region. Default taken from msticpyconfig.yaml "
            + "(only needed if creating new vault.)"
        ),
    )
    parser.add_argument(
        "--secnames",
        "-n",
        nargs="+",
        help=(
            "Add an additional list of secret names to search for in "
            + "the config file. Defaults are "
            + "'AuthKey', 'ApiID', 'password' and 'clientsecret'. "
            + "(the names are case-insensitive)"
        ),
    )
    parser.add_argument(
        "--existing",
        "-e",
        action="store_true",
        default=False,
        help=("Use the named existing vault. Do not try to create."),
    )
    parser.add_argument(
        "--list",
        "-l",
        action="store_true",
        default=False,
        help=("View current secrets."),
    )
    parser.add_argument(
        "--show",
        action="store_true",
        default=False,
        help=("View changes that would be made without doing anything."),
    )
    parser.add_argument(
        "--verbose",
        action="store_true",
        default=False,
        help=("Print out more details."),
    )
    parser.add_argument(
        "--output", "-o", help=("Output file path to save updated msticpyconfig.yaml")
    )
    parser.add_argument(
        "--yes",
        "-y",
        action="store_true",
        default=False,
        help="Suppresses prompts for confirmation. Answers 'y' to all",
    )
    return parser