diff --git a/.forgejo/workflows/cd-macmini.yml b/.forgejo/workflows/cd-macmini.yml index 7700d3a3f..7e3638c6d 100644 --- a/.forgejo/workflows/cd-macmini.yml +++ b/.forgejo/workflows/cd-macmini.yml @@ -174,7 +174,8 @@ jobs: - name: Pull latest code run: | cd "${{ env.PROJECT_DIR }}" - git pull origin main + GIT_SSH_COMMAND='ssh -p 2222 -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=no' \ + git pull forgejo main - name: Init deploy tracking id: init diff --git a/.github/workflows/mirror-to-forgejo.yml b/.github/workflows/mirror-to-forgejo.yml new file mode 100644 index 000000000..a8446fbbe --- /dev/null +++ b/.github/workflows/mirror-to-forgejo.yml @@ -0,0 +1,28 @@ +# Mirror GitHub → Forgejo on every push to main +# Keeps Forgejo in sync so it can serve as the deployment source. +# +# Requires GitHub secret: +# FORGEJO_DEPLOY_KEY — private SSH key matching mac-mini-deploy key in Forgejo +# (key fingerprint: SHA256:baNsV+pq28d1vSWX+jtqyV0GqRnjUcHfDZM8RopcGDE) + +name: Mirror to Forgejo + +on: + push: + branches: [main] + +jobs: + mirror: + name: Push to Forgejo + runs-on: self-hosted + steps: + - name: Mirror to Forgejo via SSH + run: | + cd /Users/mana/projects/manacore-monorepo + + git pull origin main + + # Push to Forgejo via localhost SSH (runner is on the Mac Mini) + GIT_SSH_COMMAND='ssh -p 2222 -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=no' \ + git push ssh://git@localhost:2222/till/manacore-monorepo.git main 2>&1 + echo "Mirrored to Forgejo"