diff --git a/testing/execution_engine_integration/src/build_utils.rs b/testing/execution_engine_integration/src/build_utils.rs index 966a3bfb43..15e7fdc0f1 100644 --- a/testing/execution_engine_integration/src/build_utils.rs +++ b/testing/execution_engine_integration/src/build_utils.rs @@ -20,7 +20,6 @@ pub fn clone_repo(repo_dir: &Path, repo_url: &str) -> Result<(), String> { Command::new("git") .arg("clone") .arg(repo_url) - .arg("--recursive") .current_dir(repo_dir) .output() .map_err(|_| format!("failed to clone repo at {repo_url}"))?, @@ -41,6 +40,21 @@ pub fn checkout(repo_dir: &Path, revision_or_branch: &str) -> Result<(), String> ) })?, |_| {}, + )?; + output_to_result( + Command::new("git") + .arg("submodule") + .arg("update") + .arg("--init") + .arg("--recursive") + .current_dir(repo_dir) + .output() + .map_err(|_| { + format!( + "failed to update submodules on branch or revision at {repo_dir:?}/{revision_or_branch}", + ) + })?, + |_| {}, ) }