forked from lix-project/hydra
Create failed build steps for cached failures
This commit is contained in:
parent
92ea800cfb
commit
e039f5f840
1 changed files with 7 additions and 3 deletions
|
@ -1159,12 +1159,16 @@ bool State::doBuildStep(std::shared_ptr<StoreAPI> store, Step::ptr step,
|
||||||
message. */
|
message. */
|
||||||
if (buildStatus != bsAborted) result.errorMsg = "";
|
if (buildStatus != bsAborted) result.errorMsg = "";
|
||||||
|
|
||||||
if (!cachedFailure && !retry) {
|
if (!retry) {
|
||||||
|
|
||||||
/* Create failed build steps for every build that depends
|
/* Create failed build steps for every build that
|
||||||
on this. */
|
depends on this. For cached failures, only create a
|
||||||
|
step for builds that don't have this step as
|
||||||
|
top-level (otherwise the user won't be able to see
|
||||||
|
what caused the build to fail). */
|
||||||
for (auto build2 : dependents) {
|
for (auto build2 : dependents) {
|
||||||
if (build == build2) continue;
|
if (build == build2) continue;
|
||||||
|
if (cachedFailure && build2->drvPath == step->drvPath) continue;
|
||||||
createBuildStep(txn, 0, build2, step, machine->sshName,
|
createBuildStep(txn, 0, build2, step, machine->sshName,
|
||||||
buildStepStatus, result.errorMsg, build->id);
|
buildStepStatus, result.errorMsg, build->id);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue