name: Update 42 repo on: push: branches: main permissions: contents: write pages: write id-token: write jobs: update: name: Update 42 repo runs-on: ubuntu-latest if: ${{ github.repository != 'sdevsantiago/42_project_template' }} steps: - name: Get repo name id: repo_name run: echo "repo_name=$(echo ${GITHUB_REPOSITORY} | cut -d'/' -f2)" >> $GITHUB_OUTPUT - name: Git config run: | git config --global user.name "github-actions[bot]" git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com" - name: Checkout uses: actions/checkout@v5 with: path: ${{ steps.repo_name.outputs.repo_name }} - name: Checkout 42 uses: actions/checkout@v5 with: ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} repository: sdevsantiago/42 path: 42 submodules: true - name: Sync and commit run: | cd 42 git submodule update --remote ${{ steps.repo_name.outputs.repo_name }} if ! git diff --quiet; then git commit -am "[${{ steps.repo_name.outputs.repo_name }}] $(cd ${{ steps.repo_name.outputs.repo_name }} && git log -n 1 --format=%B)" git push else echo "Submodule already up to date." fi env: SYNC_PAT: ${{ secrets.SYNC_PAT }}