From 7b78121388ac852af73ea17a16a73fc6cc52da86 Mon Sep 17 00:00:00 2001 From: harryswift01 Date: Wed, 26 Aug 2026 16:49:14 +0100 Subject: [PATCH] feat(workflows): add zulip notification action to release workflow --- .github/workflows/release.yaml | 37 ++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index acb34dd..62f3231 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -113,12 +113,49 @@ jobs: steps: - name: create release + id: create_release uses: softprops/action-gh-release@3d0d9888cb7fd7b750713d6e236d1fcb99157228 # v3.0.2 with: name: v${{ github.event.inputs.version }} generate_release_notes: true tag_name: ${{ github.event.inputs.version }} + - name: fetch generated changelog + id: changelog + if: steps.create_release.outcome == 'success' + continue-on-error: true + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + # generate_release_notes builds the changelog server-side, so pull + # it back down here rather than trying to reconstruct it locally. + gh release view "${{ github.event.inputs.version }}" --repo "${{ github.repository }}" --json body -q .body > changelog.txt + + - name: notify Zulip of release + if: steps.create_release.outcome == 'success' + continue-on-error: true + env: + ZULIP_BOT_EMAIL: ${{ secrets.ZULIP_BOT_EMAIL }} + ZULIP_BOT_API_KEY: ${{ secrets.ZULIP_BOT_API_KEY }} + ZULIP_SITE: ${{ secrets.ZULIP_SITE }} + REPO: ${{ github.event.repository.name }} + TAG: v${{ github.event.inputs.version }} + RELEASE_URL: ${{ steps.create_release.outputs.url }} + run: | + CONTENT=$(cat <