Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -375,13 +375,20 @@ jobs:
env:
GH_TOKEN: ${{ github.token }}
TITLE: Zerr* for ${{ steps.guard.outputs.title }} ${{ steps.guard.outputs.version }}
HOST: ${{ steps.guard.outputs.host }}
VERSION: ${{ steps.guard.outputs.version }}
run: |
ls -l assets
# Notes come from the tag's own file; a suffixed tag (max-v0.3.0-rc1) falls back to
# the final release's file (max-v0.3.0.md), so a dry run shows the real notes.
notes="docs/releases/${GITHUB_REF_NAME}.md"
final="docs/releases/${HOST}-v${VERSION%%-*}.md"
if [ -f "$notes" ]; then
notes_args=(--notes-file "$notes")
elif [ -f "$final" ]; then
notes_args=(--notes-file "$final")
else
notes_args=(--notes "Draft. Write docs/releases/${GITHUB_REF_NAME}.md and paste it here before publishing.")
notes_args=(--notes "Draft. Write $final and paste it here before publishing.")
fi
pre=()
case "$GITHUB_REF_NAME" in *-*) pre=(--prerelease) ;; esac
Expand Down
3 changes: 2 additions & 1 deletion docs/design/release-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ _Maintainer steps. User-facing install instructions live in `maxmsp/README.md` a
checks the tag against the host's version file, and creates a **draft** release with the zips
attached and the notes pre-filled (the `release` job in `.github/workflows/ci.yml`). Read the
draft on GitHub, then publish it. A tag with a suffix (`max-v0.3.0-rc1`) becomes a prerelease
draft: that is the dry run. `gh release create` refuses an existing release, so a re-run after a
draft, filled from the final release's notes file (`max-v0.3.0.md`) when it has none of its own:
that is the dry run. `gh release create` refuses an existing release, so a re-run after a
failure needs `gh release delete <tag> --yes` first.
5. **Notes live in the repo and stay**: `docs/releases/<tag>.md`, written before tagging, kept
afterwards as the changelog. No H1 (the release title supplies it). `## Breaking` first when
Expand Down
Loading