34 releases (20 breaking)

new 0.21.0 Nov 21, 2024
0.20.0 Oct 18, 2023
0.19.0 Aug 30, 2022
0.18.1 Dec 17, 2021
0.4.0 Apr 30, 2020

#109 in Operating systems

Download history 27/week @ 2024-09-20 10/week @ 2024-09-27 1/week @ 2024-10-04

1,940 downloads per month

GPL-3.0-or-later

69KB
1.5K SLoC

Rebuilderd Workers

Workers are tasked with, in short, carrying out the actual rebuild. Here you'll find:

  1. The rust codebase for the worker daemon (that listens in for rebuild commands) under src/
  2. A series of entrypoints needed by the workers (i.e., rebuilder-{archlinux,debian}) to instantiate new build environments.
  3. A series of dockerfiles to build dockerized worker workloads (e.g., in case you would want to use an autoscaling group in a k8s cluster or in case you just want to keep workers separated).

You can test workers individually by (for example) building a container and scheduling a build (for a debian worker):

$ docker build -t rebuilderd-worker-debian worker/Dockerfile.debian
$ docker run --cap-add=SYS_ADMIN --rm \
    rebuilderd-worker-debian build debian \
    https://buildinfos.debian.net/buildinfo-pool/r/rust-sniffglue/rust-sniffglue_0.11.1-6+b1_amd64.buildinfo
📝 WARNING
note these commands are run in the root of the repo, not here
⚠️ WARNING
Running Debian workers as containers requires SYS_ADMIN capabilities which could be dangerous!

Dependencies

~21–35MB
~645K SLoC