diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 290e023..e740fcc 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -22,20 +22,34 @@ jobs: go-version-file: go.mod - run: go install golang.org/x/tools/cmd/goimports@latest - uses: arduino/setup-task@v2 - - run: wget -O openapi.json https://api.aiven.io/doc/openapi.json - run: task generate env: AIVEN_TOKEN: ${{ secrets.AIVEN_TOKEN }} AIVEN_PROJECT_NAME: ${{ secrets.AIVEN_PROJECT_NAME }} - id: date run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - uses: peter-evans/create-pull-request@v7 + - id: create_pr + uses: peter-evans/create-pull-request@v7 with: author: GitHub body: > automated changes by [update](https://github.com/aiven/go-client-codegen/blob/main/.github/workflows/update.yml) GitHub Actions workflow - branch: update/${{ steps.date.outputs.date }} + branch: update/${{ steps.date.outputs.date }}-${{ github.run_id }} commit-message: "chore(update): bump openapi schema (${{ steps.date.outputs.date }})" title: "chore(update): bump openapi schema (${{ steps.date.outputs.date }})" + labels: | + schema bump + automated pr + - name: Close previous update PRs + run: | + new_pr_number=${{ steps.create_pr.outputs.pull-request-number }} + prs=$(gh pr list --state open --json number,headRefName --jq '.[] | select(.headRefName | startswith("update/")) | .number') + for pr in $prs; do + if [ "$pr" != "$new_pr_number" ]; then + gh pr close $pr --comment "Auto-closing pull request in favor of #$new_pr_number" --delete-branch + fi + done + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}