summaryrefslogtreecommitdiffstats
path: root/cli/objects/room.py
diff options
context:
space:
mode:
authorAlejandro Sirgo Rica <asirgo@soleta.eu>2024-11-08 10:06:00 +0100
committerAlejandro Sirgo Rica <asirgo@soleta.eu>2024-11-11 09:13:56 +0100
commit3d0aff3d1d47a053a678ecbec69d585cf1bbb275 (patch)
tree26bc0cf97e232bd8253b65a6824ad48766a37570 /cli/objects/room.py
parent59f2f501aa6dfc2f238f670625c11d9fd3d49cef (diff)
cli: ensure the program returns 0 on success and 1 on error
propagate a returncode in each operation and make it the returncode of the program. Prevent sys.exit calls in post(), get() and delete() request handlers to enable cleanup code and error handling. Keep a basic error log inside the request functions if the connection can't be established or if the response contains an error code.
Diffstat (limited to 'cli/objects/room.py')
-rw-r--r--cli/objects/room.py19
1 files changed, 14 insertions, 5 deletions
diff --git a/cli/objects/room.py b/cli/objects/room.py
index f22c843..da9a872 100644
--- a/cli/objects/room.py
+++ b/cli/objects/room.py
@@ -65,7 +65,7 @@ class OgRoom():
err = True
if err:
parser.print_help(file=sys.stderr)
- sys.exit(1)
+ return 1
payload = {
'name': parsed_args.name,
@@ -82,7 +82,10 @@ class OgRoom():
payload['folder_id'] = parsed_args.folder
if parsed_args.desc:
payload['location'] = parsed_args.desc
- rest.post('/room/add', payload=payload)
+ res = rest.post('/room/add', payload=payload)
+ if not res:
+ return 1
+ return 0
@staticmethod
def update_room(rest, args):
@@ -115,7 +118,7 @@ class OgRoom():
err = True
if err:
parser.print_help(file=sys.stderr)
- sys.exit(1)
+ return 1
payload = {
'id': parsed_args.id,
@@ -124,7 +127,10 @@ class OgRoom():
'gateway': parsed_args.gateway,
}
- rest.post('/room/update', payload=payload)
+ res = rest.post('/room/update', payload=payload)
+ if not res:
+ return 1
+ return 0
@staticmethod
def delete_room(rest, args):
@@ -136,5 +142,8 @@ class OgRoom():
help='room id in database')
parsed_args = parser.parse_args(args)
payload = {'id': parsed_args.id}
- rest.post('/room/delete', payload=payload)
+ res = rest.post('/room/delete', payload=payload)
+ if not res:
+ return 1
+ return 0