feat: harden reviewed registry releases
All checks were successful
Standalone registry checks / check (push) Successful in 3m43s

This commit is contained in:
Nic Weyand 2026-09-13 01:19:27 -04:00
commit e83f43d00f
Signed by: nicweyand
SSH key fingerprint: SHA256:2te+ycJIQON/Wo/dH6+ZkFSQ4HnHWpetV2azx9E65dQ
37 changed files with 2856 additions and 286 deletions

13
ci/Dockerfile Normal file
View file

@ -0,0 +1,13 @@
# By Nic Weyand! Pinned toolchain image for the repository-scoped isolated runner.
FROM rust:1.98.0-trixie@sha256:620dbcd124499c59e2406d3741574b5c5838cf9eb9656f0c3a03948f79b02959
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
cmake \
openssh-client \
python3 \
shellcheck \
&& rm -rf /var/lib/apt/lists/* \
&& rustup component add clippy rustfmt
WORKDIR /workspace

19
ci/README.md Normal file
View file

@ -0,0 +1,19 @@
# Isolated Forgejo runner image
Build the reviewed pinned image and register a repository-scoped runner with only
the container label below:
```bash
docker build --pull -t argand-site-registry-ci:0.2.0 -f ci/Dockerfile .
forgejo-runner register --no-interactive \
--instance https://git.argand.org \
--token REPOSITORY_REGISTRATION_TOKEN \
--name argand-site-registry-isolated \
--labels site-registry-isolated:docker://argand-site-registry-ci:0.2.0
```
Run the daemon with capacity one, no host label, no bind-volume allowlist, no
Docker socket inside jobs, `privileged: false`, and container limits of two CPUs,
4 GiB memory and 4 GiB memory plus swap. The workflow fetches the exact public
commit without repository credentials. This runner contains no dataset, reviewer,
release-signing or activation authority.