Skip to content

Commit 332e27e

Browse files
committed
fix: Rebuild cached failures on proper workers
1 parent c5b6bf0 commit 332e27e

File tree

1 file changed

+18
-9
lines changed

1 file changed

+18
-9
lines changed

buildbot_nix/buildbot_nix/__init__.py

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -348,16 +348,20 @@ async def run(self) -> int:
348348
msg.append(f" failed build: {url}")
349349
error_log.addStderr("\n".join(msg) + "\n")
350350
return util.FAILURE
351-
self.build.addStepsAfterCurrentStep(
352-
nix_build_steps(
353-
self.project,
354-
self.worker_names,
355-
self.post_build_steps,
356-
self.branch_config_dict,
357-
self.outputs_path,
358-
self.show_trace,
351+
self.build.addStepsAfterCurrentStep([
352+
Trigger(
353+
name="Rebuild cached failure",
354+
waitForFinish=True,
355+
schedulerNames=[f"{self.project.project_id}-rebuild"],
356+
haltOnFailure=True,
357+
flunkOnFailure=True,
358+
sourceStamps=[],
359+
alwaysUseLatest=False,
360+
updateSourceStamp=False,
361+
copy_properties=["attr", "system", "branch", "revision"],
362+
set_properties={"reason": "rebuild"},
359363
)
360-
)
364+
])
361365
return util.SUCCESS
362366

363367

@@ -1075,6 +1079,11 @@ def config_for_project(
10751079
name=f"{project.project_id}-nix-register-gcroot",
10761080
builderNames=[f"{project.name}/nix-register-gcroot"],
10771081
),
1082+
# this is triggered from cached failure rebuilds
1083+
schedulers.Triggerable(
1084+
name=f"{project.project_id}-rebuild",
1085+
builderNames=[f"{project.name}/nix-eval"],
1086+
),
10781087
# allow to manually trigger a nix-build
10791088
schedulers.ForceScheduler(
10801089
name=f"{project.project_id}-force",

0 commit comments

Comments
 (0)