Scott Minor
Scott Minor

Reputation: 179

How to keep Bazel from downloading failing test logs

I'm running a bazel build against a Remote Build Execution endpoint; on the machine with the bazel client, there's very little local storage, so I want to avoid downloading anything.

--remote_download_outputs=minimal avoids downloading build artifacts, but I see that failing tests still have their log downloaded (and possibly the associated test.xml + undeclared outputs zip files as well). Even trying to tell bazel not to print test failure info (via --test_summary=none) didn't stop these downloads. The files should still be discoverable via the Build Event Stream, and AFAIK there's no need to download them to get the details necessary to announce them in the stream.

Unfortunately, in certain cases these test outputs can still be very large. How can I avoid downloading any files to the client machine?

Upvotes: 0

Views: 285

Answers (1)

Benjamin Peterson
Benjamin Peterson

Reputation: 20560

In short, there is no way currently; file a feature request.

The long story: --remote_download_minimal will suppress the download of most test outputs like test.xml. The problem is that test.log and test.err are not normal file outputs. Bazel always downloads the stdout and stderr of all actions regardless of how --remote_download_outputs is set. The output of normal build actions goes to the console, but Bazel writes test stdout and stderr to test.log and test.err files in the bazel-testlogs tree.

Upvotes: 1

Related Questions