Currently we show a dump instead of just "Build not found" message.
tools.wm-lol@tools-sgebastion-10:~$ toolforge build logs wm-lol-buildpacks-pipelinerun-h8fvnnsoteu Traceback (most recent call last): File "/usr/bin/toolforge", line 8, in <module> sys.exit(main()) File "/usr/lib/python3/dist-packages/toolforge_cli/cli.py", line 809, in main toolforge() File "/usr/lib/python3/dist-packages/click/core.py", line 764, in __call__ return self.main(*args, **kwargs) File "/usr/lib/python3/dist-packages/click/core.py", line 717, in main rv = self.invoke(ctx) File "/usr/lib/python3/dist-packages/click/core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/lib/python3/dist-packages/click/core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/lib/python3/dist-packages/click/core.py", line 956, in invoke return ctx.invoke(self.callback, **ctx.params) File "/usr/lib/python3/dist-packages/click/core.py", line 555, in invoke return callback(*args, **kwargs) File "/usr/lib/python3/dist-packages/toolforge_cli/cli.py", line 440, in wrapper return func(*args, **kwargs) File "/usr/lib/python3/dist-packages/toolforge_cli/cli.py", line 577, in build_logs logs = builds_client.get(f"/build/{run_name}/logs") File "/usr/lib/python3/dist-packages/toolforge_weld/api_client.py", line 52, in get r.raise_for_status() File "/usr/lib/python3/dist-packages/requests/models.py", line 940, in raise_for_status raise HTTPError(http_error_msg, response=self) requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://api.svc.tools.eqiad1.wikimedia.cloud:30003/builds/v1//build/wm-lol-buildpacks-pipelinerun-h8fvnnsoteu/logs
This task is to change the cli to show a nicer message (as the reply is actually expected).