90c7336830ba9c2c2d9e2490c57016058b2ad67c
The .version PUT fired immediately after CHANGELOG.md created the next-release branch, racing Gitea's branch indexing. With curl -sf (fail-silent) any 404/409 produced exit 22 with no body, leaving the log without diagnostic output. - Move the branch-readiness poll to run right after CHANGELOG.md commit, before .version is written. - Replace silent .version write with a 5-attempt retry loop that logs HTTP code and body on failure, matching the PR creation block.
Shared Workflows
Reusable Gitea Actions workflows for Unbound Software repositories.
Available Workflows
Release.yml
Automated release workflow using git-cliff for changelog generation.
Usage:
name: Release
on:
push:
branches: [main]
jobs:
release:
uses: unboundsoftware/shared-workflows/.gitea/workflows/Release.yml@main
Inputs:
tag_only(boolean, default:false): Set totrueto only create tags without full releases
Requirements:
This workflow reads the release token from /runner-secrets/release-token, which is automatically available on Unbound's Gitea runners. No repository secrets need to be configured.
How it works:
- On each push to the default branch, generates a changelog using git-cliff
- Creates or updates a
next-releasebranch with the updated CHANGELOG.md and .version file - Opens or updates a PR titled "chore(release): prepare for vX.Y.Z"
- When the .version file exists (after merging the release PR), creates a Gitea release with the changelog
Description
Languages
Markdown
100%