Skip to content

Commit

Permalink
builders: report hash errors as failures
Browse files Browse the repository at this point in the history
  • Loading branch information
grahamc committed May 16, 2021
1 parent 231953b commit 22e1757
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 0 deletions.
3 changes: 3 additions & 0 deletions ofborg/src/message/buildresult.rs
Expand Up @@ -8,6 +8,7 @@ pub enum BuildStatus {
Success,
Failure,
TimedOut,
HashMismatch,
UnexpectedError { err: String },
}

Expand All @@ -17,6 +18,7 @@ impl From<BuildStatus> for String {
BuildStatus::Skipped => "No attempt".into(),
BuildStatus::Success => "Success".into(),
BuildStatus::Failure => "Failure".into(),
BuildStatus::HashMismatch => "A fixed output derivation's hash was incorrect".into(),
BuildStatus::TimedOut => "Timed out, unknown build status".into(),
BuildStatus::UnexpectedError { ref err } => format!("Unexpected error: {}", err),
}
Expand All @@ -29,6 +31,7 @@ impl From<BuildStatus> for Conclusion {
BuildStatus::Skipped => Conclusion::Neutral,
BuildStatus::Success => Conclusion::Success,
BuildStatus::Failure => Conclusion::Neutral,
BuildStatus::HashMismatch => Conclusion::Failure,
BuildStatus::TimedOut => Conclusion::Neutral,
BuildStatus::UnexpectedError { .. } => Conclusion::Neutral,
}
Expand Down
1 change: 1 addition & 0 deletions ofborg/src/nix.rs
Expand Up @@ -365,6 +365,7 @@ pub fn wait_for_build_status(spawned: SpawnedAsyncCmd) -> BuildStatus {
Some(0) => BuildStatus::Success,
Some(100) => BuildStatus::Failure, // nix permanent failure
Some(101) => BuildStatus::TimedOut, // nix build timedout
Some(102) => BuildStatus::HashMismatch, // Fixed Output Derivation's hash was wrong
Some(i) => BuildStatus::UnexpectedError {
err: format!("command failed with exit code {}", i),
},
Expand Down

0 comments on commit 22e1757

Please sign in to comment.