Commit graph

6 commits

Author SHA1 Message Date
Niels Göttsch
964b0be064 fix(docker): drop /var/run symlink from chisel rootfs for Kaniko
All checks were successful
Build & Publish / Check (push) Successful in 2m25s
Build & Publish / Build & Publish (push) Successful in 5m33s
The runtime stage copies the chisel rootfs onto `/` in a scratch stage.
chisel ships /var/run as a symlink to /run; Kaniko replacing it forces a
RemoveAll of the destination /var/run, which on the Forgejo act runner
holds a busy /var/run/act bind-mount -> 'unlinkat ... device or resource
busy'. The image does not need /var/run, so remove the symlink.
2026-07-17 10:40:05 +02:00
Niels Göttsch
423ddc7870 ci: build image daemonless with Kaniko (no Docker)
Some checks failed
Build & Publish / Check (push) Successful in 2m15s
Build & Publish / Build & Publish (push) Failing after 9s
Replace the docker buildx / build-push-action build job with Kaniko running as
the job container: it builds the Dockerfile from the git context and pushes to
the forge registry, with no Docker daemon, no buildx, and no privileged DinD.

Kaniko cannot handle BuildKit `RUN --mount=type=cache`, so drop the two cache
mounts on the cargo build layer (plain `cargo build` now). Document the pipeline
and this gotcha (plus the node20-only runner and full-github-URL action rules) in
the README so it isn't reintroduced.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-16 17:17:09 +02:00
Jon Seager
7563250809 fix: support sqlx 0.9 2026-06-08 10:56:18 +00:00
Jon Seager
bd7d4f3c5f build: run brewlog as non-root user 1000:1000
Add brewlog user/group (UID/GID 1000) to chiseled rootfs via
base-passwd_data slice and useradd. Set USER 1000:1000 in the
runtime stage. Requires a one-time remediation deploy (with
gosu + chown entrypoint) to fix existing volume permissions
before this can be used.
2026-05-22 15:00:04 +00:00
Jon Seager
b1e0a41797 chore: Switch to mold linker and fix Dockerfile build
Use mold linker in .cargo/config.toml instead of lld. Add binutils
and mkdir -p to Dockerfile builder stage. Update fly.toml model.
2026-05-22 12:03:03 +01:00
Jon Seager
527358b695 chore: migrate from Nix to mise for dev environment management
Replace Nix flake with mise for toolchain management, treefmt for
formatting, prek for pre-commit hooks, and a Dockerfile for container
builds. Update CI workflows to use jdx/mise-action instead of Nix.

Add system dependency instructions to README.md and CLAUDE.md.
2026-05-22 12:03:03 +01:00