aboutsummaryrefslogtreecommitdiff
path: root/args.py
blob: b4d70d583ea38e661ab62bf2649d2c21202d4240 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import argparse


def get_args():
    parser = argparse.ArgumentParser()

    parser.add_argument("--endpoint", default="https://hatecomputers.club")
    parser.add_argument("--api-key-file", default="apikey.secret")
    parser.add_argument(
        "--log-level",
        default="INFO",
        choices=["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"],
    )

    parser.add_argument("--certbot", action="store_true", default=False)
    parser.add_argument("--acme-url", required=False)
    parser.add_argument("--acme-storage", default="acme.json")

    parser.add_argument("--sync", action="store_true", default=False)
    parser.add_argument("--records-file", default="records.json")

    args = parser.parse_args()

    if (args.certbot) and (not args.acme_url):
        parser.error("--acme-url is required when --certbot is used")
    if (args.certbot) and (args.sync):
        parser.error("--sync cannot be used in combination with --certbot")

    return args