diff --git a/.github/release-please-config.json b/.github/release-please-config-stable.json similarity index 86% rename from .github/release-please-config.json rename to .github/release-please-config-stable.json index c90be46..8461d98 100644 --- a/.github/release-please-config.json +++ b/.github/release-please-config-stable.json @@ -7,6 +7,11 @@ "section": "Features", "hidden": false }, + { + "type": "hotfix", + "section": "Hotfixes", + "hidden": true + }, { "type": "fix", "section": "Bug Fixes", @@ -22,9 +27,7 @@ "draft-pull-request": false, "packages": { ".": { - "extra-files": [ - "README.md" - ], + "extra-files": ["README.md"], "release-type": "elixir" } }, diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 13c604c..3371db3 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -30,7 +30,7 @@ jobs: return; } - const REGEX = /^(feat!|fix!|fix|feat|chore|(fix|feat|chore)\(\w.*\)):\s(\[\w{1,8}-\d{1,8}\]|.*).*/; + const REGEX = /^(feat!|fix!|hotfix!|fix|feat|chore|hotfix|(fix|feat|chore|hotfix)\(\w.*\)):\s(\[\w{1,8}-\d{1,8}\]|.*).*/; if (!REGEX.test(title)) { core.setFailed("Pull request title does not follow conventional commits"); @@ -43,7 +43,10 @@ jobs: fix: [JIRA-1234] fix an existing feature feat: [JIRA-1234] a new feature to release feat!: a breaking change + hotfix: needed in production immediately - Note: Adding ! (i.e. \`feat!:\`) represents a breaking change and will result in a SemVer major release. + Adding ! (i.e. \`feat!:\`) represents a breaking change and will result in a SemVer major release. + + Starting a commit with \`hotfix\` will result in a seperate hotfix release PR. `.trim()); } diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 8d1a041..95b675b 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -12,7 +12,7 @@ concurrency: cancel-in-progress: false jobs: - Please: + Stable: runs-on: ubuntu-latest steps: @@ -20,7 +20,7 @@ jobs: name: Release uses: googleapis/release-please-action@v4 with: - config-file: .github/release-please-config.json + config-file: .github/release-please-config-stable.json manifest-file: .github/release-please-manifest.json target-branch: main token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}