diff options
Diffstat (limited to 'src/mlia/cli/main.py')
-rw-r--r-- | src/mlia/cli/main.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/mlia/cli/main.py b/src/mlia/cli/main.py index cc97494..88258d5 100644 --- a/src/mlia/cli/main.py +++ b/src/mlia/cli/main.py @@ -160,12 +160,16 @@ def setup_context( args: argparse.Namespace, context_var_name: str = "ctx" ) -> tuple[ExecutionContext, dict]: """Set up context and resolve function parameters.""" - ctx = ExecutionContext( - verbose="debug" in args and args.debug, - action_resolver=CLIActionResolver(vars(args)), - output_format=get_output_format(args), - output_dir=args.output_dir if "output_dir" in args else None, - ) + try: + ctx = ExecutionContext( + verbose="debug" in args and args.debug, + action_resolver=CLIActionResolver(vars(args)), + output_format=get_output_format(args), + output_dir=args.output_dir if "output_dir" in args else None, + ) + except Exception as err: # pylint: disable=broad-except + print(f"Error: {err}", file=sys.stderr) + sys.exit(1) setup_logging(ctx.logs_path, ctx.verbose, ctx.output_format) |