ReleaseKit
ReleaseKit is an opinionated Go library and executable for a shared release
process. The Go module, root releasekit facade, buildinfo runtime package,
local candidate check, source-tag publication API, selected-target build API,
tagged-source delivery API, and version, check, publish, build, and
deliver commands are implemented. ReleaseKit's source-only maintainer
procedure is documented. Its own hosted-page wiring and executable artifacts
remain future work. The
product roadmap and
implementation plan describe their selected
behavior and sequence.
Run the offline Go test suite from the repository root with:
go test ./...
The version command prints ReleaseKit's version:
go run ./cmd/releasekit version
The local candidate check validates a committed release note and runs the configured checks (or the default offline Go test command):
go run ./cmd/releasekit check v1.2.3
Publish the source tag from a committed candidate with:
./scripts/release v1.2.3
See the ReleaseKit maintainer procedure for preparation and failure recovery.
Documentation
- ReleaseKit proposal: proposed publication, builds, version injection, and delivery, with the initial implementation plan.
- Contributor guide: orientation, validation, and selective policy reading.
- CLI contract: the
version,check,publish,build, anddelivercommands. - Configuration: profile fields and child-command settings.
- Runtime version guidance: how applications
read their embedded version through
buildinfo. - Build guidance: compile selected Go targets with an injected application version.
- Delivery guidance: deliver tagged source and report hosted page and asset status.
- Gitea integration: hosted release-page operations and their failure behavior.
- Candidate check guidance: local candidate validation through the Go API and CLI.
- Maintainer release procedure: ReleaseKit's source-only publication workflow and recovery.
- Internal package inventory: implemented internal components and their responsibilities.
- Architecture policy: responsibility and dependency boundaries for development.
- ADR 0001: the accepted public facade decision.
- Policy adoption roadmap: completed adoption and the current source-release path.
ReleaseKit is licensed under the LGPL v3.0 or later.
Open Source attribution notices are available.