diff --git a/odd_cli/apps/metadata.py b/odd_cli/apps/metadata.py index 360256e..03b8f78 100644 --- a/odd_cli/apps/metadata.py +++ b/odd_cli/apps/metadata.py @@ -1,3 +1,4 @@ +import traceback from pathlib import Path import typer @@ -12,6 +13,7 @@ pretty_exceptions_show_locals=False, ) + @app.callback() def collect( folder: Path = typer.Argument(..., exists=True, resolve_path=True), @@ -24,14 +26,18 @@ def collect( client = Client(host=platform_host, token=platform_token) generator = FilesystemGenerator(host_settings="local") + try: + client.create_data_source( + data_source_oddrn=generator.get_data_source_oddrn(), + data_source_name="local_files", + ) - client.create_data_source( - data_source_oddrn=generator.get_data_source_oddrn(), - data_source_name="local_files", - ) - - data_entities = read(path=folder, generator=generator) + data_entities = read(path=folder, generator=generator) - client.ingest_data_entity_list(data_entities=data_entities) + client.ingest_data_entity_list(data_entities=data_entities) - logger.success(f"Ingested {len(data_entities.items)} datasets") \ No newline at end of file + logger.success(f"Ingested {len(data_entities.items)} datasets") + except Exception as e: + logger.debug(traceback.format_exc()) + logger.error(e) + raise typer.Exit(code=1) diff --git a/odd_cli/apps/tokens.py b/odd_cli/apps/tokens.py index c5caf7d..f7cf0d1 100644 --- a/odd_cli/apps/tokens.py +++ b/odd_cli/apps/tokens.py @@ -1,7 +1,9 @@ +import traceback + import typer from odd_cli.client import Client - +from ..logger import logger app = typer.Typer(short_help="Manipulate OpenDataDiscovery platform's tokens") @@ -12,7 +14,11 @@ def create( platform_host: str = typer.Option(..., "--host", "-h", envvar="ODD_PLATFORM_HOST"), ): client = Client(platform_host) - token = client.create_token(name=name, description=description) - - print(token) - return token + try: + token = client.create_token(name=name, description=description) + print(token) + return token + except Exception as e: + logger.debug(traceback.format_exc()) + logger.error(e) + raise typer.Exit(code=1)