| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- name: Draft Release
- on:
- push:
- branches:
- - master
- - dev/*.*.*
- concurrency:
- group: ${{ github.workflow }}-${{ github.ref }}
- cancel-in-progress: true
- jobs:
- # Refs: https://github.com/release-drafter/release-drafter
- update-release-draft:
- runs-on: ubuntu-latest
- outputs:
- CURRENT_VERSION: ${{ steps.package-json.outputs.packageVersion }}
- RELEASE_DRAFT_BODY: ${{ steps.release-drafter.outputs.body }}
- steps:
- - uses: actions/checkout@v4
- - name: Retrieve information from package.json
- uses: myrotvorets/info-from-package-json-action@1.2.0
- id: package-json
- - uses: release-drafter/release-drafter@v5
- id: release-drafter
- with:
- config-name: release-drafter.yml
- name: v${{ steps.package-json.outputs.packageVersion }}
- tag: v${{ steps.package-json.outputs.packageVersion }}
- version: ${{ steps.package-json.outputs.packageVersion }}
- disable-autolabeler: true
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- # Refs: https://github.com/bakunyo/git-pr-release-action
- update-release-pr:
- needs: update-release-draft
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- with:
- fetch-depth: 0
- - name: Get release version
- id: release-version
- run: |
- RELEASE_VERSION=`npx semver -i patch ${{ needs.update-release-draft.outputs.CURRENT_VERSION }}`
- echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_OUTPUT
- - name: Get base branch
- id: base-branch
- run: |
- GITHUB_REF_NAME=${{ github.ref_name }}
- WILDCARD_VERSION=${GITHUB_REF_NAME#dev/}
- # set "release/current" or "release/X.X.x" to BASE_BRANCH
- BASE_BRANCH=release/${{ github.ref_name == 'master' && 'current' || '$WILDCARD_VERSION' }}
- echo "BASE_BRANCH=$BASE_BRANCH" >> $GITHUB_OUTPUT
- - name: Create/Update Pull Request
- uses: bakunyo/git-pr-release-action@master
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- GIT_PR_RELEASE_BRANCH_PRODUCTION: ${{ steps.base-branch.outputs.BASE_BRANCH }}
- GIT_PR_RELEASE_BRANCH_STAGING: ${{ github.ref_name }}
- GIT_PR_RELEASE_TEMPLATE: .github/git-pr-release-template.erb
- GIT_PR_RELEASE_TITLE: Release v${{ steps.release-version.outputs.RELEASE_VERSION }}
- GIT_PR_RELEASE_BODY: ${{ needs.update-release-draft.outputs.RELEASE_DRAFT_BODY }}
|