managarten/.github/workflows/mirror-to-forgejo.yml
Till JS 0968c84eb4 feat(ci): GitHub→Forgejo mirror + Forgejo CD pulls from forgejo remote
- .github/workflows/mirror-to-forgejo.yml: on push to main, runner on Mac Mini
  pushes to Forgejo via local SSH (localhost:2222). Keeps Forgejo in sync.
- .forgejo/workflows/cd-macmini.yml: deploy step now pulls from forgejo remote
  (ssh://localhost:2222) instead of GitHub origin.

Flow: local → git push origin main → GitHub → mirror-to-forgejo runs on Mac Mini
      → pushes to Forgejo → Forgejo CD pipeline → deploys containers

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-30 19:32:16 +02:00

28 lines
865 B
YAML

# 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"