mycofi-earth-website/.github/workflows/mirror-to-gitea.yml

51 lines
1.4 KiB
YAML

name: Mirror to Gitea
on:
push:
branches:
- main
- master
workflow_dispatch:
jobs:
mirror:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Configure Git
run: |
git config --global user.name "GitHub Actions"
git config --global user.email "actions@github.com"
- name: Mirror to Gitea
env:
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
GITEA_USERNAME: ${{ secrets.GITEA_USERNAME }}
run: |
# Validate secrets are set
if [ -z "$GITEA_TOKEN" ] || [ -z "$GITEA_USERNAME" ]; then
echo "Error: GITEA_TOKEN or GITEA_USERNAME secrets not set"
exit 1
fi
REPO_NAME=$(basename $GITHUB_REPOSITORY)
GITEA_URL="https://${GITEA_USERNAME}:${GITEA_TOKEN}@gitea.jeffemmett.com/jeffemmett/${REPO_NAME}.git"
# Remove existing remote if present, then add fresh
git remote remove gitea 2>/dev/null || true
git remote add gitea "$GITEA_URL"
# Push with verbose output for debugging
echo "Pushing all branches to Gitea..."
git push gitea --all --force
echo "Pushing tags to Gitea..."
git push gitea --tags --force
echo "Mirror complete!"