Files
ReleaseKit/README.md

69 lines
2.6 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.
- [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.