implement the configuration

This commit is contained in:
Mirek Kratochvil 2025-10-13 21:16:05 +02:00
parent 265673f935
commit 9b6b4e6c61

View file

@ -9,6 +9,7 @@ import time
from pathlib import Path
import argparse
import configparser
import hashlib
import html2text
@ -36,6 +37,8 @@ def api_token(args):
return args.debug_api_token
if args.env_api_token:
return os.environ["PATCHODON_API_TOKEN"]
if args.config_api_token:
return args.config_api_token
raise ValueError("API token not specified")
@ -434,7 +437,16 @@ def main():
)
args = ap.parse_args()
# TODO patch args from config (if found)
if os.path.exists(args.config):
cp = configparser.ConfigParser()
cp.read(args.config)
if "patchodon" in cp:
if "instance_url" in cp["patchodon"] and args.instance_url is None:
args.instance_url = cp["patchodon"]["instance_url"]
if "api_token" in cp["patchodon"]:
args.config_api_token = cp["patchodon"]["api_token"]
else:
trace(f"ignoring non-existent config: {args.config}")
if args.command == "post":
do_post(args)