name: submodules sync
on:
  push:
    branches:
      - master
jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
      - name: Check out repository code
        uses: actions/checkout@focs
        with:
          fetch-depth: 0
      - name: Set up SSH
        run: |
          mkdir -p ~/.ssh
          echo "${{ secrets.DEPLOY_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
          echo "${{ secrets.DEPLOY_KEY }}" > ~/.ssh/id_ed25519.pub
          chmod 600 ~/.ssh/id_ed25519
          chmod 600 ~/.ssh/id_ed25519.pub
          ssh-keyscan -p 2222 focs.ji.sjtu.edu.cn >> ~/.ssh/known_hosts
          ssh -T git@focs.ji.sjtu.edu.cn -p 2222
      - name: Set up Git
        run: |
          git config --global user.name "bot-joj"
          git config --global user.email "bot-joj@focs.ji.sjtu.edu.cn"
          git remote set-url origin ssh://git@focs.ji.sjtu.edu.cn:2222/JOJ/JOJ3.git
      - name: Git Submodule Update
        run: |
          git submodule init
          git submodule update --init --recursive
          git pull --recurse-submodules
          git submodule update --remote --recursive
      - name: Commit update
        shell: bash
        run: |
          git add .
          git diff-index --quiet HEAD || git commit -m "chore: update submodule references"
          git push