71 lines
2.7 KiB
Markdown
71 lines
2.7 KiB
Markdown
# 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,
|
|
and `version`, `check`, `publish`, and `build` commands are implemented.
|
|
ReleaseKit's source-only maintainer procedure is documented. Hosted delivery
|
|
and ReleaseKit's own binary artifacts remain future work. The
|
|
[product roadmap](docs/roadmap/releasekit.md) and
|
|
[implementation plan](docs/roadmap/implementation.md) describe their selected
|
|
behavior and sequence.
|
|
|
|
Run the offline Go test suite from the repository root with:
|
|
|
|
```sh
|
|
go test ./...
|
|
```
|
|
|
|
The version command prints ReleaseKit's version:
|
|
|
|
```sh
|
|
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):
|
|
|
|
```sh
|
|
go run ./cmd/releasekit check v1.2.3
|
|
```
|
|
|
|
Publish the source tag from a committed candidate with:
|
|
|
|
```sh
|
|
./scripts/release v1.2.3
|
|
```
|
|
|
|
See the [ReleaseKit maintainer procedure](docs/release.md) for preparation and
|
|
failure recovery.
|
|
|
|
## Documentation
|
|
|
|
- [ReleaseKit proposal](docs/roadmap/releasekit.md): proposed publication, builds,
|
|
version injection, and delivery, with the initial implementation plan.
|
|
- [Contributor guide](docs/development.md): orientation, validation, and selective
|
|
policy reading.
|
|
- [CLI contract](docs/cli.md): the `version`, `check`, `publish`, and `build`
|
|
commands.
|
|
- [Configuration](docs/config.md): profile fields and child-command settings.
|
|
- [Runtime version guidance](docs/consumers/runtime-version.md): how applications
|
|
read their embedded version through `buildinfo`.
|
|
- [Build guidance](docs/consumers/build.md): compile selected Go targets with an
|
|
injected application version.
|
|
- [Gitea integration](docs/integrations/gitea.md): hosted release-page
|
|
operations and their failure behavior.
|
|
- [Candidate check guidance](docs/consumers/check.md): local candidate validation
|
|
through the Go API and CLI.
|
|
- [Maintainer release procedure](docs/release.md): ReleaseKit's source-only
|
|
publication workflow and recovery.
|
|
- [Internal package inventory](docs/internal/overview.md): implemented internal
|
|
components and their responsibilities.
|
|
- [Architecture policy](docs/policy/architecture.md): responsibility and dependency
|
|
boundaries for development.
|
|
- [ADR 0001](docs/adr/0001-public-facade.md): the accepted public facade decision.
|
|
- [Policy adoption roadmap](docs/roadmap/policy.md): completed adoption and the
|
|
current source-release path.
|
|
|
|
ReleaseKit is licensed under the [LGPL v3.0 or later](COPYRIGHT).
|
|
|
|
[Open Source attribution notices](docs/oss/attribution.md) are available.
|