name: sync on: schedule: - cron: '*/5 * * * *' # Allows you to run this workflow manually from the Actions tab workflow_dispatch: jobs: sync: if: github.server_url != 'https://github.com' runs-on: ubuntu-latest steps: - name: init run: | git config --global user.email "vtolstov " git config --global user.name "github-actions[bot]" echo "machine git.unistack.org login vtolstov password ${{ secrets.TOKEN_GITEA }}" >> /root/.netrc echo "machine github.com login vtolstov password ${{ secrets.TOKEN_GITHUB }}" >> /root/.netrc - name: sync master run: | git clone --filter=blob:none --filter=tree:0 --branch master --single-branch https://github.com/${GITHUB_REPOSITORY} repo cd repo git remote add --no-tags --fetch --track master upstream ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY} git diff --stat master upstream/master git pull -v --rebase upstream master git push upstream master -v --progress git push origin master -v --progress cd ../ rm -rf repo - name: sync v3 run: | git clone --filter=blob:none --filter=tree:0 --branch v3 --single-branch https://github.com/${GITHUB_REPOSITORY} repo cd repo git remote add --no-tags --fetch --track v3 upstream ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY} git diff --stat v3 upstream/v3 git pull -v --rebase upstream v3 git push upstream v3 -v --progress git push origin v3 -v --progress cd ../ rm -rf repo - name: sync v4 run: | git clone --filter=blob:none --filter=tree:0 --branch v4 --single-branch https://github.com/${GITHUB_REPOSITORY} repo cd repo git remote add --no-tags --fetch --track v4 upstream ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY} git diff --stat v4 upstream/v4 git pull -v --rebase upstream v4 git push upstream v4 -v --progress git push origin v4 -v --progress cd ../ rm -rf repo