No description
  • Dockerfile 100%
Find a file
Ed Sweeney 3f7f285edb
All checks were successful
Build and push image / build (push) Successful in 5m15s
include mdbook and mermaid
2026-05-25 17:07:09 -07:00
.forgejo/workflows init 2026-05-01 23:12:25 -07:00
Dockerfile include mdbook and mermaid 2026-05-25 17:07:09 -07:00
README.md init 2026-05-01 23:01:50 -07:00

navicore-forgejo-runner

Custom container image for Forgejo Actions runners, pre-loaded with the toolchain that the patch-seq family of repos needs to run just ci.

What's baked in

Tool Version Source
Debian bookworm base image
clang 19 apt.llvm.org
Rust 1.95.0 rustup (minimal + fmt/clippy)
just 1.42.4 pinned GitHub release tarball
build-essential, libedit-dev, libssl-dev, pkg-config, jq, git, curl, wget, gnupg distro default apt

Versions are ARGs in the Dockerfile. Bumping is one-line.

Publishing

The .forgejo/workflows/build.yaml workflow builds and pushes git.navicore.tech/navicore/navicore-forgejo-runner on every push to main, with both a :latest tag and an immutable :<sha> tag.

Required repo secrets:

  • REGISTRY_USER
  • REGISTRY_TOKEN

Using the image from a workflow

Once a runner is registered against this image (Forgejo runner configuration, labels: in the runner's config.yml), a consumer workflow can target it directly:

jobs:
  ci:
    runs-on: navicore-rust  # or whatever label maps to this image
    steps:
      - uses: actions/checkout@v4
      - run: just ci

The patch-seq ci-linux.yml keeps its apt-based clang install for now so the workflow still runs on stock runners; it can be slimmed down once this image is the default.

Local build

docker build -t navicore-forgejo-runner:dev .
docker run --rm -it navicore-forgejo-runner:dev clang --version
docker run --rm -it -v "$PWD/../patch-seq":/workspace navicore-forgejo-runner:dev just ci