From cc8c5088a438087f40575502360f59f8f01c71b8 Mon Sep 17 00:00:00 2001 From: Asep Haryana Date: Thu, 30 Jul 2026 21:32:40 +0700 Subject: [PATCH] fix(ci): use SSH_PRIVATE_KEY secret, sanitize key format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Ganti secret name: VPS_SSH_KEY → SSH_PRIVATE_KEY (nama yg ada) - Fix nix copy URL: ***@ → $VPS_USER@ - Sanitize SSH key: strip \r\n, validasi dengan ssh-keygen - Cegah libcrypto error dari key format broken --- .github/workflows/nix-build.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nix-build.yml b/.github/workflows/nix-build.yml index 532c53a..476c4e5 100644 --- a/.github/workflows/nix-build.yml +++ b/.github/workflows/nix-build.yml @@ -61,11 +61,14 @@ jobs: - name: Setup SSH key if: github.ref == 'refs/heads/main' env: - SSH_KEY: ${{ secrets.VPS_SSH_KEY }} + SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | mkdir -p ~/.ssh echo "$SSH_KEY" > ~/.ssh/id_ed25519 chmod 600 ~/.ssh/id_ed25519 + # Strip \r\n and validate key format + sed -i 's/\r$//' ~/.ssh/id_ed25519 + ssh-keygen -y -f ~/.ssh/id_ed25519 >/dev/null 2>&1 || { echo "SSH key invalid"; exit 1; } ssh-keyscan -H "$VPS_HOST" >> ~/.ssh/known_hosts 2>/dev/null - name: Nix copy to VPS @@ -80,11 +83,13 @@ jobs: steps: - name: Setup SSH key env: - SSH_KEY: ${{ secrets.VPS_SSH_KEY }} + SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | mkdir -p ~/.ssh echo "$SSH_KEY" > ~/.ssh/id_ed25519 chmod 600 ~/.ssh/id_ed25519 + sed -i 's/\r$//' ~/.ssh/id_ed25519 + ssh-keygen -y -f ~/.ssh/id_ed25519 >/dev/null 2>&1 || { echo "SSH key invalid"; exit 1; } ssh-keyscan -H "$VPS_HOST" >> ~/.ssh/known_hosts 2>/dev/null - name: Deploy all services on VPS