Repository navigation
Releases
Releases · gureetk/kasad
kasad v0.1.0
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>