hotdog-werx/Releez Action
Unified release automation: create tags, validate PRs, and compute artifact versions
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Jul 5, 2026
- License
- MIT
Pinned Snippet
uses: hotdog-werx/releez@6114fc3d6e32663dcd8a3434e4843e0a1aaa1935 # 1.0.1tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| mode | Action mode: finalize — Create tags and emit version outputs after a release PR is merged validate — Preview and validate a release PR before merge version-artifact — Compute artifact versions for build pipelines validate-commit — Check a commit message against cliff.toml commit parsers | yes | — |
| github-token | GitHub token used by git-cliff to fetch PR metadata. Defaults to the built-in github.token. | no | ${{ github.token }} |
| releez-version | Override the releez version to install. Accepts a bare version number ("1.2.3" → installs releez==1.2.3) or any specifier accepted by "uv tool install" (e.g. "git+https://github.com/hotdog-werx/releez@branch"). Defaults to the version co-located with this action (same-repo pinning). | no | "" |
| is-full-release | Whether this is a full release (not a prerelease). Affects tag creation and version formatting. | no | true |
| alias-versions | Optional alias version strategy for full releases: none, major, or minor. If unset, releez config/defaults are used. | no | "" |
| version-override | Explicit version string to use (skips git-cliff auto-detection) | no | "" |
| branch | Branch name to parse for release detection (finalize and validate modes). Defaults to github.head_ref for finalize and current git branch for validate. Useful for testing with act. | no | "" |
| dry-run | [finalize] Skip tag creation and push (outputs are still computed) | no | false |
| commit-message | [validate-commit] Commit message to validate against cliff.toml parsers. | no | "" |
| post-comment | [validate] Post a PR comment with the release preview and notes | no | true |
| comment-tag | [validate] Identifier for the PR comment (enables updating vs duplicating) | no | releez-validate-release |
| prerelease-type | [version-artifact] Prerelease type: alpha, beta, or rc | no | alpha |
| prerelease-number | [version-artifact] Prerelease number (e.g. PR number) | no | "" |
| build-number | [version-artifact] Build number (e.g. run number). Defaults to github.run_number. | no | ${{ github.run_number }} |
| detect-from-branch | [version-artifact] Auto-detect version from the current release branch | no | false |
| project | [version-artifact] Project name for monorepo version detection. Scopes git-cliff to the project path and tag pattern. | no | "" |
Outputs
| name | description |
|---|---|
| release-version | Detected release version (e.g. "1.2.3" or "core-1.2.3" for monorepo) |
| project | Project name for monorepo releases (empty for single-repo) |
| release-notes | Markdown release notes |
| release-preview | [validate] Markdown release preview (dry-run output) |
| validation-status | [validate] "success" when the release branch parses and previews cleanly |
| semver-versions | Newline-separated semver versions. First line is the exact version; aliases follow. |
| docker-versions | Newline-separated docker-safe versions. First line is the exact version; aliases follow. |
| pep440-versions | Newline-separated PEP 440 versions. First line is the exact version (aliases not supported by PEP 440). |
| semver-version | Primary (exact) semver version only, without any alias tags (e.g. "1.2.3"). |
| docker-version | Primary (exact) docker-safe version only, without any alias tags (e.g. "1.2.3"). |
| pep440-version | Primary (exact) PEP 440 version only (always identical to the first entry of pep440-versions). |