From 189fb507dad8b44aec7d50aa9b785e58c233f064 Mon Sep 17 00:00:00 2001 From: wendrul <53628737+wendrul@users.noreply.github.com> Date: Fri, 17 Oct 2025 15:58:00 +0200 Subject: [PATCH] Fix ansible delegate mode only working with ssh (#6858) --- backend/windmill-api/src/resources.rs | 14 ++++++++++++-- frontend/src/lib/components/GitRepoViewer.svelte | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/backend/windmill-api/src/resources.rs b/backend/windmill-api/src/resources.rs index faf525ade0..192caa5deb 100644 --- a/backend/windmill-api/src/resources.rs +++ b/backend/windmill-api/src/resources.rs @@ -1432,7 +1432,7 @@ async fn get_git_commit_hash( false, ) .await - .map_err(|e| Error::NotAuthorized(format!("Access to resource {} denied: ({e})", path)))?; + .map_err(|e| Error::NotFound(format!("Access to resource {} denied: ({e})", path)))?; let git_resource: GitRepositoryResource = match git_repo_resource_value { Some(value) => serde_json::from_value(value).map_err(|e| { @@ -1443,7 +1443,17 @@ async fn get_git_commit_hash( let identities: Vec = query .git_ssh_identity - .map(|s| s.split(",").map(|s| s.to_string()).collect()) + .map(|s| { + s.split(",") + .filter_map(|s| { + if !s.is_empty() { + Some(s.to_string()) + } else { + None + } + }) + .collect() + }) .unwrap_or(vec![]); let (git_ssh_cmd, filenames) = diff --git a/frontend/src/lib/components/GitRepoViewer.svelte b/frontend/src/lib/components/GitRepoViewer.svelte index 4924a89529..4995e5b636 100644 --- a/frontend/src/lib/components/GitRepoViewer.svelte +++ b/frontend/src/lib/components/GitRepoViewer.svelte @@ -106,7 +106,7 @@ isCheckingPathExists = false } } catch (err: any) { - error = `Failed to load git repository ${gitRepoResourcePath}: ${err.message || 'Unknown error'}` + error = `Failed to load git repository ${gitRepoResourcePath}: ${err.status} - ${err.message || 'Unknown error'}: ${err.body}` isLoadingCommitHash = false isCheckingPathExists = false }