#!/usr/bin/env python

"""Add vault secrets."""

import argparse
import os
import sys
from typing import List

import requests


def post(argv: List[str]) -> None:
    """Parse arguments."""

    parser = argparse.ArgumentParser(
        prog=sys.argv[0],
        description="Add secrets to the vault.",
        formatter_class=argparse.ArgumentDefaultsHelpFormatter,
    )
    parser.add_argument(
        "path", type=str, help=("The k/v input path for the vault.")
    )
    parser.add_argument(
        "--secret",
        "-s",
        type=str,
        nargs=2,
        action="append",
        help="The secrets.",
    )
    args = parser.parse_args(argv)
    res = requests.post(
        f"http://localhost:5002/vault/{args.path}",
        json=dict(args.secret),
        headers={"password": os.environ.get("ROOT_PW", "")},
        timeout=3,
    )
    res.raise_for_status()


if __name__ == "__main__":
    post(sys.argv[1:])
