Better error handling

This commit is contained in:
Micke Nordin 2022-10-25 09:10:11 +02:00
parent 1461d12f4b
commit b6957ca04a
Signed by untrusted user who does not match committer: micke
GPG key ID: 0DA0A7A5708FE257
3 changed files with 17 additions and 10 deletions

View file

@ -1,3 +1,4 @@
argcomplete==2.0.0 argcomplete==2.0.0
requests==2.27.1
pyyaml==5.4.1 pyyaml==5.4.1
requests==2.27.1
simplejson==3.17.6

View file

@ -13,7 +13,9 @@ from typing import Union
import argcomplete import argcomplete
import requests import requests
import yaml import yaml
from requests.exceptions import JSONDecodeError as RequestsJSONDecodeError
from requests.models import HTTPBasicAuth from requests.models import HTTPBasicAuth
from simplejson.errors import JSONDecodeError as SimplejsonJSONDecodeError
# Helper functions # Helper functions
@ -241,14 +243,18 @@ def main() -> int:
if 'ttl' in args: if 'ttl' in args:
ttl = args.ttl ttl = args.ttl
url = setup_url(baseurl, args.data, args.name, args.rtype, ttl, args.zone) url = setup_url(baseurl, args.data, args.name, args.rtype, ttl, args.zone)
if args.command == "add": try:
run_add(url, args.json, headers) if args.command == "add":
elif args.command == "delete": run_add(url, args.json, headers)
run_delete(url, args.json, headers) elif args.command == "delete":
elif args.command == "list": run_delete(url, args.json, headers)
run_list(url, args.json, headers) elif args.command == "list":
elif args.command == "update": run_list(url, args.json, headers)
run_update(url, args.json, headers) elif args.command == "update":
run_update(url, args.json, headers)
except (RequestsJSONDecodeError, SimplejsonJSONDecodeError):
output(
error("Could not decode api response as JSON", "Could not decode"))
return 0 return 0

View file

@ -1,4 +1,4 @@
[DEFAULT] [DEFAULT]
Depends3: python3-argcomplete, python3-requests, python3-yaml Depends3: python3-argcomplete, python3-requests, python3-simplejson, python3-yaml
Debian-Version: 1 Debian-Version: 1
Package3: knotctl Package3: knotctl