|
21 | 21 | branches: |
22 | 22 | - '[4-9]+.[0-9]+.x' |
23 | 23 | pull_request: |
24 | | - types: [opened, reopened, synchronize] |
25 | | - pull_request_target: |
26 | | - types: [opened, reopened, synchronize] |
27 | | - workflow_dispatch: |
| 24 | + types: [ opened, reopened, synchronize, labeled ] |
| 25 | + pull_request_target: |
| 26 | + types: [ opened, reopened, synchronize, labeled ] |
| 27 | + workflow_dispatch: |
| 28 | +# queue jobs and only allow 1 run per branch due to the likelihood of hitting GitHub resource limits |
| 29 | +concurrency: |
| 30 | + group: ${{ github.workflow }}-${{ github.ref }} |
| 31 | + cancel-in-progress: false |
28 | 32 | jobs: |
29 | | - release_notes: |
| 33 | + update_release_draft: |
| 34 | + permissions: |
| 35 | + # write permission is required to create a github release |
| 36 | + contents: write |
| 37 | + # write permission is required for autolabeler |
| 38 | + pull-requests: write |
30 | 39 | runs-on: ubuntu-latest |
31 | 40 | steps: |
32 | | - - uses: actions/checkout@v4 |
33 | | - - name: Check if it has release drafter config file |
34 | | - id: check_release_drafter |
35 | | - run: | |
36 | | - has_release_drafter=$([ -f .github/release-drafter.yml ] && echo "true" || echo "false") |
37 | | - echo "has_release_drafter=${has_release_drafter}" >> $GITHUB_OUTPUT |
38 | | - - name: Extract branch name |
39 | | - id: extract_branch |
40 | | - run: echo "value=${GITHUB_REF:11}" >> $GITHUB_OUTPUT |
41 | | - # If it has release drafter: |
42 | | - - uses: release-drafter/release-drafter@v6 |
43 | | - if: steps.check_release_drafter.outputs.has_release_drafter == 'true' |
| 41 | + - name: "📝 Update Release Draft" |
| 42 | + uses: release-drafter/release-drafter@v6 |
44 | 43 | env: |
45 | | - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} |
46 | | - with: |
47 | | - commitish: ${{ steps.extract_branch.outputs.value }} |
48 | | - # Otherwise: |
49 | | - - name: Export Gradle Properties |
50 | | - if: steps.check_release_drafter.outputs.has_release_drafter == 'false' |
51 | | - uses: apache/grails-github-actions/export-gradle-properties@asf |
52 | | - - uses: apache/grails-github-actions/release-notes@asf |
53 | | - if: steps.check_release_drafter.outputs.has_release_drafter == 'false' |
54 | | - id: release_notes |
55 | | - with: |
56 | | - token: ${{ secrets.GH_TOKEN }} |
57 | | - - uses: ncipollo/release-action@1e3e9c6637e5566e185b7ab66f187539c5a76da7 |
58 | | - if: steps.check_release_drafter.outputs.has_release_drafter == 'false' && steps.release_notes.outputs.generated_changelog == 'true' |
59 | | - with: |
60 | | - allowUpdates: true |
61 | | - commit: ${{ steps.release_notes.outputs.current_branch }} |
62 | | - draft: true |
63 | | - name: ${{ env.title }} ${{ steps.release_notes.outputs.next_version }} |
64 | | - tag: v${{ steps.release_notes.outputs.next_version }} |
65 | | - bodyFile: CHANGELOG.md |
66 | | - token: ${{ secrets.GH_TOKEN }} |
| 44 | + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
0 commit comments