dev_scripts/cmd.rs
1use std::process::Output;
2
3use anyhow::{Result, bail};
4
5/// Make sure a command finished successfully, otherwise throw an error.
6pub fn ensure_success(output: &Output) -> Result<()> {
7 let stderr = String::from_utf8_lossy(&output.stderr);
8 let stdout = String::from_utf8_lossy(&output.stdout);
9
10 if !output.status.success() {
11 bail!("Failed to run command:\nstdout:\n{stdout}\nstderr:\n{stderr}");
12 }
13
14 Ok(())
15}