Run bazel clean in culprit finder
Change-Id: Ie2cbacbf65a713fd2defbfaff92f4e599e0a5198
diff --git a/buildkite/bazelci.py b/buildkite/bazelci.py
index b4eea0d..b101c7f 100644
--- a/buildkite/bazelci.py
+++ b/buildkite/bazelci.py
@@ -457,6 +457,7 @@
use_bazel_at_commit,
use_but,
save_but,
+ clean,
build_only,
test_only,
monitor_flaky_tests,
@@ -527,6 +528,9 @@
time.sleep(1)
print("Sauce Connect Proxy is ready, continuing...")
+ if clean:
+ execute_bazel_clean(bazel_binary, platform)
+
if not test_only:
execute_bazel_build(
bazel_binary,
@@ -956,6 +960,17 @@
return aggregated_flags
+def execute_bazel_clean(bazel_binary, platform):
+ print_expanded_group(":bazel: Clean")
+
+ try:
+ execute_command(
+ [bazel_binary] + common_startup_flags(platform) + ["clean"]
+ )
+ except subprocess.CalledProcessError as e:
+ raise BuildkiteException("bazel clean failed with exit code {}".format(e.returncode))
+
+
def execute_bazel_build(bazel_binary, platform, flags, targets, bep_file, incompatible_flags):
print_expanded_group(":bazel: Build")
@@ -1771,6 +1786,7 @@
)
runner.add_argument("--use_but", type=bool, nargs="?", const=True)
runner.add_argument("--save_but", type=bool, nargs="?", const=True)
+ runner.add_argument("--clean", type=bool, nargs="?", const=True)
runner.add_argument("--build_only", type=bool, nargs="?", const=True)
runner.add_argument("--test_only", type=bool, nargs="?", const=True)
runner.add_argument("--monitor_flaky_tests", type=bool, nargs="?", const=True)
@@ -1822,6 +1838,7 @@
use_bazel_at_commit=args.use_bazel_at_commit,
use_but=args.use_but,
save_but=args.save_but,
+ clean=args.clean,
build_only=args.build_only,
test_only=args.test_only,
monitor_flaky_tests=args.monitor_flaky_tests,