From 3d0aff3d1d47a053a678ecbec69d585cf1bbb275 Mon Sep 17 00:00:00 2001 From: Alejandro Sirgo Rica Date: Fri, 8 Nov 2024 10:06:00 +0100 Subject: 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. --- cli/objects/session.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'cli/objects/session.py') diff --git a/cli/objects/session.py b/cli/objects/session.py index 0168cb3..4fde4d0 100644 --- a/cli/objects/session.py +++ b/cli/objects/session.py @@ -44,8 +44,8 @@ class OgSession(): help='Specific client IP') parsed_args = parser.parse_args(args) - r = rest.get('/scopes') - scopes = r.json() + res = rest.get('/scopes') + scopes = res.json() ips = set() for center in parsed_args.center_id: @@ -59,11 +59,14 @@ class OgSession(): if not ips: print("Missing --client-ip, or --room-id/--center-id. No clients provided.") - return None + return 1 payload = { 'clients': list(ips), 'disk': parsed_args.disk, 'partition': parsed_args.part, } - r = rest.post('/session', payload=payload) + res = rest.post('/session', payload=payload) + if not res: + return 1 + return 0 -- cgit v1.2.3-18-g5258