ci: add release automation and changelog mirror#85
Merged
Conversation
Contributor
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
cliparr-web | b531027 | Commit Preview URL Branch Preview URL |
May 28 2026, 11:34 PM |
Contributor
There was a problem hiding this comment.
Pull request overview
Adds release automation infrastructure: a Conventional Commits PR title validator, a manual release workflow that plans the next SemVer, smoke-tests/publishes the multi-arch Docker image, creates a GitHub Release, and triggers a Cloudflare Pages rebuild. The website also gains a /changelog page that mirrors GitHub Releases at Astro build time.
Changes:
- New
ReleaseandPR TitleGitHub workflows; existing Docker workflow scoped to PR/manual smoke builds only. - Release planning/notes helpers under
scripts/release/(conventional commit parsing, SemVer bump, prerelease numbering, GitHub Release creation) withnode --testcoverage ofconventional.mjsand new root scriptstest:release/release:plan. - Astro
/changelogpage backed by a small markdown renderer and GitHub Releases fetcher, with header/footer nav entries and matching.release-notesstyles.
Reviewed changes
Copilot reviewed 16 out of 17 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/release.yml |
New manual release workflow: plan, validate, smoke-test, push image, create release, trigger Pages hook. |
.github/workflows/pr-title.yml |
New Conventional Commit PR-title check via amannn/action-semantic-pull-request. |
.github/workflows/docker.yml |
Drops tag-push trigger and publish path; remains PR/manual smoke build only. |
scripts/release/conventional.mjs |
Conventional Commit parser, SemVer/tag utilities, change summary helpers. |
scripts/release/plan-release.mjs |
Plans next version, docker tags, GitHub output values from git log + PR titles. |
scripts/release/create-github-release.mjs |
Generates notes, composes Docker section, creates GitHub Release via API. |
scripts/release/conventional.test.mjs |
node:test suite covering classification, bumps, prerelease, merge-commit parsing. |
package.json |
Adds test:release (run first by test) and release:plan scripts. |
apps/www/src/pages/changelog.astro |
New static changelog page rendering releases at build time. |
apps/www/src/lib/githubReleases.ts |
Fetches and normalizes GitHub Releases for the site. |
apps/www/src/lib/markdown.ts |
Minimal escape-first markdown renderer for release bodies. |
apps/www/src/styles/global.css |
.release-notes prose styles. |
apps/www/src/components/Header.astro, Footer.astro |
Link to /changelog. |
apps/www/src/env.d.ts |
Typing for optional GITHUB_TOKEN env var. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Notes
Validation