ci: harden the git-cliff release flow (gitlab mirror without an artifact server + commit lint) #20
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "ci/harden-release-flow"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Two fixes hardening the new git-cliff release flow (follow-ups to PR #17/#19).
1.
release.yml— GitLab mirror + Pages were silently skippedv0.3.2 published all 7 assets to Forgejo ✅, but the
releasejob then went red and themirror-gitlabjob (needs: release) was skipped → no GitLab release, no Pages redeploy.Cause: #15 split GitLab into a downstream job and hands artifacts over via
actions/upload-artifact/download-artifact, which need a Forgejo Actions artifact storage backend this self-hosted runner doesn't have (exactly the risk #15's comment flagged).upload-artifactfailed after the Forgejo release succeeded → release job red → mirror skipped.Fix: drop the artifact hand-off.
mirror-gitlabnow pulls the assets straight from the Forgejo release via the API (browser_download_url+ token) and rebuilds the flat wasm site bundle from the-wasm.zipasset. Keeps #15's isolation (GitLab can't block Forgejo) without the artifact server, and the release job no longer goes red after a successful release. Validated locally by running this exact pull+rebuild logic against the v0.3.2 release.2.
ci.yml— add acommit-lintjobThe pipeline now derives the version and changelog from Conventional Commits (git-cliff). A malformed subject is silently dropped from both — no bump, missing from the changelog. New fast (no-build) job gates every commit a PR adds with a shell regex over the accepted types. Dependency-free (no Node/commitlint) since this is a Rust repo on a sudo-less runner.
v0.3.2 itself is published on Forgejo; the GitLab/Pages backfill for it is being handled separately.