Allow cancelling test runs when detecting flakes When using --runs_per_tests_detects_flakes, Bazel runs multiple actions in parallel and aggregates them such that failed runs are ignored if there is at least one passing run. This change adds a new flag --experimental_cancel_concurrent_tests, which causes Bazel to cancel any concurrent actions when the first passing run is observed. This can reduce the end-to-end build time in case of large flaky tests. This is only the first half of the implementation. The code path to interrupt a running action is currently only used to end the entire build, and does not post a TestResult for the interrupted action. This leads to confusing command-line reporting of the results. PiperOrigin-RevId: 275199895
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
See CONTRIBUTING.md