Skip to content

Releases

kasad v0.1.0

kasad v0.1.0 Pre-release
Pre-release

Choose a tag to compare

@gureetk gureetk released this 14 Nov 00:07
11b5c55
Add releases, a container image, and settings from the environment (#12)

- .github/workflows: CI runs the Go and web app tests on every pull
  request and on main. Release runs on a version tag: it runs the
  tests, builds archives for four kinds of Linux machine with their
  checksums, publishes them as a GitHub release, and pushes a container
  image to ghcr.io. A pull request that changes how a release is built
  goes through the same steps without publishing anything.
- scripts/dist.sh builds the release archives.
- Dockerfile: an image that holds the binary alone, runs as an
  unprivileged user, keeps its files in /data and listens on port 8080.
  The timezone database is built into the binary, since the image has
  none of its own.
- cmd/kasad: every flag can be set through the environment, as
  KASAD_DATA, KASAD_LISTEN and so on, and a flag on the command line
  wins. KASAD_PASSWORD_FILE and KASAD_TOKEN_FILE name a file that holds
  the secret; serve refuses to start if the file cannot be read or is
  empty, or if a secret is given both ways. There is a version command,
  and serve logs its version and local time when it starts.
- contrib: the systemd unit reads its settings from /etc/kasad.env.
  A settings file to start from, and a Compose file.
- README: installing, settings, and how a release is made.

Co-authored-by: Claude Fable 5.2 <noreply@anthropic.com>