diff --git a/.gitea/workflows/pipeline.yml b/.gitea/workflows/pipeline.yml index 861f4fa9..76482f01 100644 --- a/.gitea/workflows/pipeline.yml +++ b/.gitea/workflows/pipeline.yml @@ -125,40 +125,29 @@ jobs: run: | echo "🔑 Setting up SSH authentication..." - # Create .ssh directory with proper permissions mkdir -p ~/.ssh chmod 700 ~/.ssh - # Add the private SSH key from secrets - # Make sure you've added PRODUCTION_SSH_KEY as a secret in your repository - echo "${{ secrets.PRODUCTION_SSH_KEY }}" > ~/.ssh/id_rsa + # Decode the base64-encoded SSH key + echo "${{ secrets.PRODUCTION_SSH_KEY_BASE64 }}" | base64 -d > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa - # Alternative: If you're using a specific key file name, you can use: - # echo "${{ secrets.PRODUCTION_SSH_KEY }}" > ~/.ssh/kulakpos_prod_key - # chmod 600 ~/.ssh/kulakpos_prod_key + # Add host to known_hosts + ssh-keyscan -H ${{ secrets.PRODUCTION_HOST }} >> ~/.ssh/known_hosts 2>/dev/null || true - # Add the host key to known_hosts to avoid host key verification prompt - # Replace PRODUCTION_HOST_IP with your actual server IP/hostname - ssh-keyscan -H ${{ secrets.PRODUCTION_HOST }} >> ~/.ssh/known_hosts 2>/dev/null - - # Alternative: If you want to use SSH config file + # Create SSH config cat > ~/.ssh/config << EOF Host kulakpos_prod HostName ${{ secrets.PRODUCTION_HOST }} User ${{ secrets.PRODUCTION_USER }} - Port ${{ secrets.PRODUCTION_PORT || 22 }} IdentityFile ~/.ssh/id_rsa StrictHostKeyChecking accept-new - UserKnownHostsFile ~/.ssh/known_hosts - ServerAliveInterval 60 - ServerAliveCountMax 3 EOF chmod 600 ~/.ssh/config echo "✅ SSH configuration complete" - + - name: Debug SSH Configuration run: | echo "Current user: $(whoami)"