diff --git a/scripts/dynu/fetch_dynu_dns.py b/scripts/dynu/fetch_dynu_dns.py index 8621ec1..ba03e4a 100755 --- a/scripts/dynu/fetch_dynu_dns.py +++ b/scripts/dynu/fetch_dynu_dns.py @@ -190,7 +190,11 @@ def main() -> int: base_url = os.environ.get("DYNU_BASE_URL", DEFAULT_BASE_URL).strip().strip("'").strip('"') - domains = list_domains(base_url, api_key) + try: + domains = list_domains(base_url, api_key) + except RuntimeError as exc: + print(str(exc), file=sys.stderr) + return 1 target = [d for d in domains if str(d.get("name", "")).strip(".").lower() == BASE_DOMAIN] if not target: @@ -207,7 +211,11 @@ def main() -> int: print(f"Domain entry for {BASE_DOMAIN} is missing 'id'; cannot fetch records.", file=sys.stderr) return 4 - records = list_records(base_url, api_key, domain_id) + try: + records = list_records(base_url, api_key, domain_id) + except RuntimeError as exc: + print(str(exc), file=sys.stderr) + return 1 normalized_domains.append( { "name": str(d.get("name", BASE_DOMAIN)).strip().strip("."),