diff --git a/CODEOWNERS b/CODEOWNERS index a6b2a2372623..6b082d23ec46 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -656,6 +656,7 @@ /scripts/ncs-toolchain-version-minimum.txt @nrfconnect/ncs-co-build-system @nrfconnect/ncs-ci /scripts/tools-versions-*.txt @nrfconnect/ncs-co-build-system @nrfconnect/ncs-ci /scripts/requirements-*.txt @nrfconnect/ncs-co-build-system @nrfconnect/ncs-ci +/scripts/west_commands/utils/ @gmarull /scripts/west_commands/create_board/ @gmarull /scripts/west_commands/ncs-bicr.py @gmarull /scripts/west_commands/ncs-board-actions.py @gmarull diff --git a/scripts/west_commands/utils/__init__.py b/scripts/west_commands/utils/__init__.py new file mode 100644 index 000000000000..391733757135 --- /dev/null +++ b/scripts/west_commands/utils/__init__.py @@ -0,0 +1,24 @@ +# Copyright (c) 2024 Nordic Semiconductor ASA +# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause + +import json +import sys +import traceback + + +def install_json_excepthook(): + def excepthook(type, value, tb): + output = { + "errors": [ + { + "type": type.__name__, + "message": str(value), + "traceback": "".join(traceback.format_tb(tb)) + } + ] + } + + print(json.dumps(output, indent=2), file=sys.stderr) + sys.exit(1) + + sys.excepthook = excepthook