diff --git a/.github/workflows/update-submodules.yml b/.github/workflows/update-submodules.yml index 3e0c24a33..19bd86b30 100644 --- a/.github/workflows/update-submodules.yml +++ b/.github/workflows/update-submodules.yml @@ -33,14 +33,21 @@ jobs: - name: Update submodule run: | git checkout -b csupdate-${{ matrix.branches }} + git reset --hard origin/${{ matrix.branches }} cd lib/FFXIVClientStructs git fetch git reset --hard origin/main cd ../.. git add lib/FFXIVClientStructs git commit --message "Update ClientStructs" - git push origin csupdate-${{ matrix.branches }} + git push origin csupdate-${{ matrix.branches }} --force - name: Create PR run: | echo ${{ secrets.UPDATE_PAT }} | gh auth login --with-token - gh pr create --head csupdate-${{ matrix.branches }} --title "[${{ matrix.branches }}] Update ClientStructs" --body "" --base ${{ matrix.branches }} + prNumber=$(gh pr list --base ${{ matrix.branches }} --head csupdate-${{ matrix.branches }} --state open --json number --template "{{range .}}{{.number}}{{end}}") + if [ -z "$prNumber" ]; then + echo "No PR found, creating one" + gh pr create --head csupdate-${{ matrix.branches }} --title "[${{ matrix.branches }}] Update ClientStructs" --body "" --base ${{ matrix.branches }} + else + echo "PR already exists, ignoring" + fi