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
2 changes: 0 additions & 2 deletions .github/workflows/release-candidate.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
name: Release candidate
on:
push:
tags: ['v*']
workflow_dispatch:
inputs:
version:
Expand Down
2 changes: 1 addition & 1 deletion docs/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ CI runs units, clean package verification, then the real-CMS smoke suite. `Packa

Artifacts retain the package, checksum, source/dependency manifest, resolved host graph and failure evidence for seven days. Browser traces start after login and are retained only on failures. Screenshots and console summaries use synthetic data; query strings and response bodies are not included in console summaries. Raw host logs are sanitized before upload and excluded by artifact patterns. Never use live credentials with this deterministic host. SQL readiness/CMS readiness/total elapsed time, SQL resource usage and aggregate child peak RSS are recorded when execution is possible. The successful run measured 27.4 seconds from smoke-script start to CMS readiness and 57.45 seconds through tests and cleanup; see the validation record. Keep the full suite on PRs until measured results justify a documented change.

The release-candidate workflow accepts `vMAJOR.MINOR.PATCH` tags or equivalent manual version input and checks it against the project version. It runs the functional suite and the same package/CMS pipeline. Only after all required jobs succeed does a separate job create an unpublished GitHub Release for `vMAJOR.MINOR.PATCH`. That job alone has `contents: write`; ordinary PR builds keep read-only permissions.
The release-candidate workflow runs only through **Run workflow**, accepts a `MAJOR.MINOR.PATCH` version input and checks it against the project version. Tag pushes do not start candidate creation. It runs the functional suite and the same package/CMS pipeline. Only after all required jobs succeed does a separate job create an unpublished GitHub Release for `vMAJOR.MINOR.PATCH`. That job alone has `contents: write`; ordinary PR builds keep read-only permissions.

The draft attaches the tested `.nupkg`, `SHA256SUMS`, `manifest.json` and plugin dependency lockfile. The package is downloaded from the same run and verified again against the expected version, source commit and checksum; it is never rebuilt for upload. Notes identify the source, checksum, validation run, automated upgrade coverage and outstanding live checks. These release assets remain available beyond the seven-day Actions artifact window until the draft or assets are deleted.

Expand Down
Loading