draft-release.yml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. name: Draft Release
  2. on:
  3. push:
  4. branches:
  5. - master
  6. - dev/4.*
  7. jobs:
  8. # Refs: https://github.com/release-drafter/release-drafter
  9. update-release-draft:
  10. runs-on: ubuntu-latest
  11. outputs:
  12. CURRENT_VERSION: ${{ steps.package-json.outputs.packageVersion }}
  13. RELEASE_DRAFT_BODY: ${{ steps.release-drafter.outputs.body }}
  14. steps:
  15. - uses: actions/checkout@v2
  16. - name: Retrieve information from package.json
  17. uses: myrotvorets/info-from-package-json-action@1.1.0
  18. id: package-json
  19. # Drafts your next Release notes as Pull Requests are merged into "master"
  20. - uses: release-drafter/release-drafter@v5
  21. id: release-drafter
  22. with:
  23. name: v${{ steps.package-json.outputs.packageVersion }}
  24. tag: v${{ steps.package-json.outputs.packageVersion }}
  25. version: ${{ steps.package-json.outputs.packageVersion }}
  26. disable-autolabeler: true
  27. env:
  28. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  29. # Refs: https://github.com/bakunyo/git-pr-release-action
  30. update-release-pr:
  31. needs: update-release-draft
  32. runs-on: ubuntu-latest
  33. steps:
  34. - uses: actions/checkout@v2
  35. with:
  36. fetch-depth: 0
  37. - name: Get release version
  38. id: release-version
  39. run: |
  40. RELEASE_VERSION=`npx semver -i patch ${{ needs.update-release-draft.outputs.CURRENT_VERSION }}`
  41. echo ::set-output name=RELEASE_VERSION::$RELEASE_VERSION
  42. - name: Create/Update Pull Request
  43. uses: bakunyo/git-pr-release-action@master
  44. env:
  45. GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  46. GIT_PR_RELEASE_BRANCH_PRODUCTION: release/current
  47. GIT_PR_RELEASE_BRANCH_STAGING: master
  48. GIT_PR_RELEASE_TEMPLATE: .github/git-pr-release-template.erb
  49. GIT_PR_RELEASE_TITLE: Release v${{ steps.release-version.outputs.RELEASE_VERSION }}
  50. GIT_PR_RELEASE_BODY: ${{ needs.update-release-draft.outputs.RELEASE_DRAFT_BODY }}