From 043af4d9ecfd6b771656f414ae82ed74ce232329 Mon Sep 17 00:00:00 2001 From: Philippe Date: Wed, 1 Jul 2026 14:59:58 +0200 Subject: [PATCH 1/2] ci: publish a GitHub release from the CHANGELOG on v* tags --- .github/workflows/release.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 60a083d..59f2824 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -23,3 +23,16 @@ jobs: run: gem push activemail-*.gem env: GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }} + - name: Publish GitHub release + if: startsWith(github.ref, 'refs/tags/v') + env: + GH_TOKEN: ${{ github.token }} + TAG: ${{ github.ref_name }} + run: | + notes=$(awk -v v="${TAG#v}" ' + $0 ~ "^## \\[" v "\\]" {grab=1; next} + grab && /^## \[/ {exit} + grab {print} + ' CHANGELOG.md) + gh release create "$TAG" --title "$TAG" \ + --notes "${notes:-See [CHANGELOG.md](CHANGELOG.md).}" From bbd24824e25904ac9cbb09c4423584869c5d9adc Mon Sep 17 00:00:00 2001 From: Philippe Date: Wed, 1 Jul 2026 15:05:12 +0200 Subject: [PATCH 2/2] ci: stop CHANGELOG extraction at link-ref block (last section) --- .github/workflows/release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 59f2824..f5ece9c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -32,6 +32,7 @@ jobs: notes=$(awk -v v="${TAG#v}" ' $0 ~ "^## \\[" v "\\]" {grab=1; next} grab && /^## \[/ {exit} + grab && /^\[[^]]+\]:/ {exit} grab {print} ' CHANGELOG.md) gh release create "$TAG" --title "$TAG" \