From bbd72e63d1c2a484a5ed9099dc570e10769449e0 Mon Sep 17 00:00:00 2001 From: Bausager Date: Mon, 6 Oct 2025 21:06:02 +0200 Subject: [PATCH] Update .gitea/workflows/sync-public.yml --- .gitea/workflows/sync-public.yml | 48 +++++++++++++++----------------- 1 file changed, 22 insertions(+), 26 deletions(-) diff --git a/.gitea/workflows/sync-public.yml b/.gitea/workflows/sync-public.yml index 1be8e01..2ebc95e 100644 --- a/.gitea/workflows/sync-public.yml +++ b/.gitea/workflows/sync-public.yml @@ -1,19 +1,27 @@ -name: Sync public mirror +name: Diagnose SSH to Flux-oss on: + workflow_dispatch: push: - branches: [ main ] # change if your default branch differs + branches: [ main ] jobs: - sync: + diag: runs-on: ubuntu-latest steps: - - name: Checkout private repo - uses: actions/checkout@v4 - with: - fetch-depth: 0 + - name: Print runner info + run: | + uname -a + df -h + free -h || true - - name: Install rsync - run: sudo apt-get update && sudo apt-get install -y rsync + - name: Ensure secret is present + env: + SSH_KEY: ${{ secrets.PUBLIC_REPO_SSH_KEY }} + run: | + if [ -z "$SSH_KEY" ]; then + echo "Secret PUBLIC_REPO_SSH_KEY is missing"; exit 1 + fi + echo "Secret length: ${#SSH_KEY}" - name: Prepare SSH env: @@ -23,25 +31,13 @@ jobs: mkdir -p ~/.ssh echo "$SSH_KEY" > ~/.ssh/id_sync chmod 600 ~/.ssh/id_sync - printf 'Host 192.168.1.15\n HostName 192.168.1.15\n Port 22\n User git\n IdentityFile ~/.ssh/id_sync\n IdentitiesOnly yes\n' >> ~/.ssh/config + printf 'Host gitea-lan\n HostName 192.168.1.15\n Port 22\n User git\n IdentityFile ~/.ssh/id_sync\n IdentitiesOnly yes\n' >> ~/.ssh/config ssh-keyscan -p 22 192.168.1.15 >> ~/.ssh/known_hosts - - name: Clone public repo + - name: Test SSH auth to server run: | - set -euo pipefail - git clone --depth 1 "ssh://git@192.168.1.15:22/Bausager/Flux-oss.git" /tmp/public + ssh -T gitea-lan || true - - name: Sync files (snapshot) + - name: Test Git access to Flux-oss run: | - set -euo pipefail - rsync -a --delete --exclude '.git' --exclude '.gitea' ./ /tmp/public/ - cd /tmp/public - git config user.name "Gitea CI" - git config user.email "ci@bausager.org" - if ! git diff --quiet; then - git add -A - git commit -m "Sync from Flux (private)" - git push origin HEAD:main - else - echo "No changes to push." - fi + git ls-remote ssh://gitea-lan/Bausager/Flux-oss.git