Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 19 additions & 8 deletions .github/workflows/spec_update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,20 @@ jobs:
pip install -r requirements.txt
python generate_base_client.py

- name: Close Old Pull Requests
id: close-old-prs
if: steps.git-diff-num.outputs.num-diff != 0
run: |
closed=""
gh pr list --label "automated-spec-update" --state open --json number --jq '.[].number' | while read -r pr_num; do
echo "Closing old PR #$pr_num"
gh pr close "$pr_num" --delete-branch
closed="${closed:+$closed,}$pr_num"
done
echo "closed=$closed" >> "$GITHUB_OUTPUT"
env:
GH_TOKEN: ${{ steps.app-token.outputs.token }}

- name: Create Pull Request
id: create-pr
uses: peter-evans/create-pull-request@v8
Expand All @@ -103,15 +117,12 @@ jobs:
automated-spec-update
draft: false

- name: Close Old Pull Requests
if: steps.create-pr.outputs.pull-request-number
- name: Comment on closed PRs
if: steps.create-pr.outputs.pull-request-number && steps.close-old-prs.outputs.closed
run: |
gh pr list --label "automated-spec-update" --state open --json number --jq '.[].number' | while read -r pr_num; do
if [ "$pr_num" != "${{ steps.create-pr.outputs.pull-request-number }}" ]; then
echo "Closing old PR #$pr_num"
gh pr comment "$pr_num" --body "Superseded by #${{ steps.create-pr.outputs.pull-request-number }}"
gh pr close "$pr_num" --delete-branch
fi
IFS=',' read -ra prs <<< "${{ steps.close-old-prs.outputs.closed }}"
for pr_num in "${prs[@]}"; do
gh pr comment "$pr_num" --body "Superseded by #${{ steps.create-pr.outputs.pull-request-number }}"
done
env:
GH_TOKEN: ${{ steps.app-token.outputs.token }}
Expand Down
Loading