From f394cc15defae4a9a8f09d052ffaa9eb7a43a1f3 Mon Sep 17 00:00:00 2001 From: Sharang Parnerkar Date: Tue, 10 Mar 2026 15:37:58 +0100 Subject: [PATCH] fix: SSH key display and mkdir in Dockerfile - Fetch SSH public key every time auth section opens (was only fetching once and caching failures) - Add mkdir for SSH key directory in Dockerfile.agent Co-Authored-By: Claude Opus 4.6 --- Dockerfile.agent | 3 +++ compliance-dashboard/src/pages/repositories.rs | 8 ++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Dockerfile.agent b/Dockerfile.agent index b4cee75..4e438e9 100644 --- a/Dockerfile.agent +++ b/Dockerfile.agent @@ -33,6 +33,9 @@ RUN pip3 install --break-system-packages ruff COPY --from=builder /app/target/release/compliance-agent /usr/local/bin/compliance-agent +# Ensure SSH key directory exists +RUN mkdir -p /data/compliance-scanner/ssh + EXPOSE 3001 3002 ENTRYPOINT ["compliance-agent"] diff --git a/compliance-dashboard/src/pages/repositories.rs b/compliance-dashboard/src/pages/repositories.rs index 535a8b2..6294869 100644 --- a/compliance-dashboard/src/pages/repositories.rs +++ b/compliance-dashboard/src/pages/repositories.rs @@ -28,7 +28,6 @@ pub fn RepositoriesPage() -> Element { let mut auth_token = use_signal(String::new); let mut auth_username = use_signal(String::new); let mut show_auth = use_signal(|| false); - let mut show_ssh_key = use_signal(|| false); let mut ssh_public_key = use_signal(String::new); let mut adding = use_signal(|| false); let mut toasts = use_context::(); @@ -96,10 +95,11 @@ pub fn RepositoriesPage() -> Element { class: "btn btn-ghost", style: "font-size: 12px; padding: 4px 8px;", onclick: move |_| { + let opening = !show_auth(); show_auth.toggle(); - if !show_ssh_key() { - // Fetch SSH key on first open - show_ssh_key.set(true); + if opening { + // Fetch SSH key every time the section opens + ssh_public_key.set(String::new()); spawn(async move { match crate::infrastructure::repositories::fetch_ssh_public_key().await { Ok(key) => ssh_public_key.set(key),