Base ghcr.io/inti-cmnb/kicad10_auto_full:1.9.1-1_k10.0.5 (KiBot 1.9.1, KiCad 10.0.5) plus Node.js 24.22.0 LTS from nodejs.org (SHA-256 checked). act_runner runs JavaScript actions inside the job container; the KiBot images have no Node. build.sh builds, tests and pushes git.b4l.co.th/b4l/kicad10_auto_node:latest and a versioned tag.
56 lines
1.9 KiB
Markdown
56 lines
1.9 KiB
Markdown
# CI images for B4L Gitea Actions
|
|
|
|
Images the B4L runners use, published in the Gitea container registry of the
|
|
B4L organisation (public, so runners pull them without a login).
|
|
|
|
## kicad10_auto_node
|
|
|
|
KiBot's KiCad 10 image (`ghcr.io/inti-cmnb/kicad10_auto_full`) with Node.js
|
|
added. Gitea's act_runner runs JavaScript actions such as `actions/checkout`
|
|
inside the job container, and the KiBot images have no Node.
|
|
|
|
| | |
|
|
|---|---|
|
|
| Image | `git.b4l.co.th/b4l/kicad10_auto_node:latest` |
|
|
| Versioned tag | `<KiBot>_k<KiCad>_node<Node>`, e.g. `1.9.1-1_k10.0.5_node24.22.0` |
|
|
| Contents | KiBot 1.9.1, KiCad 10.0.5, Debian 13, Node.js 24 LTS with npm |
|
|
| Used by | runner label `kicad10_auto` (product template, LVSolarBuck, harNES) |
|
|
|
|
### Runner
|
|
|
|
In the runner's `config.yaml` (or its registration labels):
|
|
|
|
```yaml
|
|
runner:
|
|
labels:
|
|
- "kicad10_auto:docker://git.b4l.co.th/b4l/kicad10_auto_node:latest"
|
|
```
|
|
|
|
Restart the runner after changing labels. With the full registry name the
|
|
runner pulls the image whenever it is missing, so a `docker image prune` no
|
|
longer breaks the jobs. `container.force_pull: true` (act_runner's default) is
|
|
fine: with the layers cached, a pull only compares the manifest.
|
|
|
|
### Build and publish
|
|
|
|
```bash
|
|
docker login git.b4l.co.th # once; a token with write:package
|
|
./build.sh # build and test
|
|
./build.sh --push # build, test, push :latest and the versioned tag
|
|
```
|
|
|
|
For a newer KiBot or Node, set `BASE` and/or `NODE_VERSION`:
|
|
|
|
```bash
|
|
BASE=ghcr.io/inti-cmnb/kicad10_auto_full:<tag> NODE_VERSION=<x.y.z> ./build.sh --push
|
|
```
|
|
|
|
Base tags: https://github.com/INTI-CMNB/kicad_auto_full/pkgs/container/kicad10_auto_full ;
|
|
Node LTS: https://nodejs.org/dist/index.json .
|
|
|
|
### Not included
|
|
|
|
`typecad-docgen`, which the docgen workflows call: the npm package
|
|
`@typecad/typecad-docgen` is no longer published (checked 2026-10-15).
|
|
Once a replacement is chosen, add it with `NPM_GLOBAL="<package>" ./build.sh --push`.
|