From e8ef040f2b934175e852c32651811eec1a884a33 Mon Sep 17 00:00:00 2001 From: drunkendog Date: Wed, 20 Dec 2023 23:50:56 +0000 Subject: [PATCH] Add scripts/minio/install-second-vhost.py --- scripts/minio/install-second-vhost.py | 44 +++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 scripts/minio/install-second-vhost.py diff --git a/scripts/minio/install-second-vhost.py b/scripts/minio/install-second-vhost.py new file mode 100644 index 0000000..719ca42 --- /dev/null +++ b/scripts/minio/install-second-vhost.py @@ -0,0 +1,44 @@ +import os +import argparse +import warnings + + +def get_cached_email() -> str: + with open("../email.cache", "r") as f: + email = f.read().strip() + return email + + +def cache_email(email: str) -> None: + try: + with open("../email.cache", "w") as f: + f.write(email) + except Exception as e: + warnings.warn(e, Warning) + + +parser = argparse.ArgumentParser() +parser.add_argument("domain") +parser.add_argument("email", nargs='?', default=None) # to not recache emails retreived from cache +parser.add_argument("cache_email", nargs='?', default=True) +args = parser.parse_args() + +if args.cache_email is True and args.email is not None: + cache_email(args.email) +if args.email is None: + args.email = get_cached_email() + +os.makedirs(os.path.dirname("/opt/quick-recover/"), exist_ok=True) +with open("/opt/quick-recover/minio-api.conf", "w") as f: + f.write(f"export DOMAIN='{args.domain}'\n") + f.write(f"export EMAIL='{args.email}'\n") + +with open("nginx-api-proxy-template.conf", "r") as f: + template = f.read().replace("#serverNameVar", f"{args.domain}") + +with open("/etc/nginx/sites-available/minio-api.conf", "w") as f: + f.write(template) + +os.system(f"sh ../getcert.sh {args.domain} {args.email}") + +os.system("sh ../nginx-ensite.sh minio-api")