Files
SilverMetal/linux/build/runner/config.yaml
SysAdmin 7b99516232 feat(linux/build): silvermetal-builder Gitea Actions runner deployment
act_runner-based deployment that handles `runs-on: silvermetal-builder` jobs.
Adapted from the stinky-roger-tv flutter-builder pattern with three changes:

- privileged: true (live-build needs loop devices + chroot)
- 4h job timeout (covers two reproducibility-gated ISO builds + diffoscope)
- silvermetal-builder label maps to catthehacker/ubuntu:act-latest, not the
  silvermetal-builder image — the builder image stays minimal (no docker-cli),
  and build.sh invokes it via `docker run` from the catthehacker job shell

Deployed at /opt/silvermetal-builder-runner/ on the SLAB docker host
(10.0.0.51); registered with git.silverlabs.uk and reporting healthy.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 11:59:44 +01:00

30 lines
908 B
YAML

# Gitea act_runner config for the silvermetal-builder runner.
#
# Two ISO builds back-to-back at ~60-90 minutes each = workflow runtime
# floor of ~3h. Default 60m timeout would trip mid-build.
log:
level: info
runner:
capacity: 1 # one reproducibility-gated build at a time
timeout: 240m # 4h ceiling per job — covers two builds + diffoscope
fetch_timeout: 5s
fetch_interval: 2s
container:
network: host
privileged: true # required: live-build needs loop devices + chroot
valid_volumes:
- "/cache:/cache"
- "/var/run/docker.sock:/var/run/docker.sock"
options: >-
-v /cache:/cache
-v /var/run/docker.sock:/var/run/docker.sock
# Cache the silvermetal-builder image locally after first pull. Bumping
# the image digest in BUILDER_IMAGE invalidates and re-pulls automatically.
force_pull: false
host:
workdir_parent: /data/cache/actions