Only fail last green update for build/test failures (#1998)
diff --git a/buildkite/bazelci.py b/buildkite/bazelci.py
index 4603ce9..d97ecf2 100755
--- a/buildkite/bazelci.py
+++ b/buildkite/bazelci.py
@@ -612,6 +612,7 @@
BUILD_LABEL_PATTERN = re.compile(r"^Build label: (\S+)$", re.MULTILINE)
BUILDIFIER_STEP_NAME = "Buildifier"
+SHARD_SUMMARY_STEP_NAME = "Print Test Summary for Shards"
SKIP_TASKS_ENV_VAR = "CI_SKIP_TASKS"
@@ -3058,7 +3059,7 @@
if actually_print_shard_summary:
pipeline_steps.append(
create_step(
- label="Print Test Summary for Shards",
+ label=SHARD_SUMMARY_STEP_NAME,
commands=[
fetch_bazelcipy_command(),
PLATFORMS[DEFAULT_PLATFORM]["python"] + " bazelci.py print_shard_summary",
@@ -3722,11 +3723,11 @@
state = job.get("state")
# Ignore steps that don't have a state (like "wait").
return (
- state is not None
+ state
and state != "passed"
and not job.get("soft_failed")
and job["id"] != current_job_id
- and job["name"] != BUILDIFIER_STEP_NAME
+ and job["name"] not in (BUILDIFIER_STEP_NAME, SHARD_SUMMARY_STEP_NAME)
)
failing_jobs = [j["name"] for j in build_info["jobs"] if has_failed(j)]