diff --git a/.github/workflows/auto-tag.yml b/.github/workflows/auto-tag.yml index e080b40..cf92c48 100644 --- a/.github/workflows/auto-tag.yml +++ b/.github/workflows/auto-tag.yml @@ -9,6 +9,7 @@ on: permissions: contents: write + actions: write # Needed to explicitly dispatch release.yml (see note below) concurrency: group: ${{ github.workflow }} @@ -66,6 +67,22 @@ jobs: echo "✅ Created and pushed tag: $TAG" + - name: Trigger release notes workflow + if: steps.tag_check.outputs.exists == 'false' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + TAG="v${{ steps.manifest.outputs.version }}" + + # NOTE: Tag pushes made with the default GITHUB_TOKEN do NOT trigger + # other workflows (GitHub's built-in recursion guard). Since we just + # pushed the tag above using GITHUB_TOKEN, release.yml's + # `push: tags: v*.*.*` trigger will NOT fire on its own. + # workflow_dispatch/repository_dispatch are exempt from that guard, + # so we explicitly dispatch release.yml here instead. + echo "::notice::Explicitly dispatching release.yml for $TAG (tag push via GITHUB_TOKEN does not auto-trigger workflows)" + gh workflow run release.yml --ref "$TAG" -f tag="$TAG" + - name: Summary run: | if [ "${{ steps.tag_check.outputs.exists }}" = "true" ]; then