hyperf/.github/workflows/gitee.yml

30 lines
969 B
YAML

name: Mirror to Gitee Repo
on: [ push, delete, create ]
jobs:
git-mirror:
if: github.repository == 'hyperf/hyperf'
runs-on: ubuntu-latest
steps:
- name: Configure Private Key
env:
SSH_PRIVATE_KEY: ${{ secrets.GITEE_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
echo "StrictHostKeyChecking no" >> ~/.ssh/config
- name: Push Mirror
if: github.repository_owner == 'hyperf'
env:
SOURCE_REPO: 'https://github.com/hyperf/hyperf.git'
DESTINATION_REPO: 'git@gitee.com:hyperf/hyperf.git'
run: |
git clone --mirror "$SOURCE_REPO" && cd `basename "$SOURCE_REPO"`
git remote set-url --push origin "$DESTINATION_REPO"
git fetch -p origin
git for-each-ref --format 'delete %(refname)' refs/pull | git update-ref --stdin
git push --mirror