fix: wrap curl output() in tokio timeout in case process hangs on stdout
This commit is contained in:
parent
554d95cfb4
commit
79bf7d9295
|
|
@ -192,7 +192,12 @@ async fn run_curl(
|
|||
|
||||
cmd.arg(url);
|
||||
|
||||
let output = cmd.output().await.map_err(|e| format!("curl exec error: {e}"))?;
|
||||
let output = tokio::time::timeout(
|
||||
std::time::Duration::from_secs_f64(timeout_secs + 2.0),
|
||||
cmd.output()
|
||||
).await
|
||||
.map_err(|_| format!("timed out after {:.0}s", timeout_secs))?
|
||||
.map_err(|e| format!("curl exec error: {e}"))?;
|
||||
|
||||
if !output.status.success() {
|
||||
let stderr = String::from_utf8_lossy(&output.stderr).to_string();
|
||||
|
|
|
|||
Loading…
Reference in New Issue