2
0
Fork 0
mirror of git://git.savannah.gnu.org/guix/maintenance.git synced 2023-12-14 03:33:04 +01:00

hydra: sysadmin: Add Cuirass remote building support.

* hydra/modules/sysadmin/build-machines.scm (berlin-new-build-machine-os): Add
a systems argument. Start a Cuirass remote worker building substitutes for the
given systems.
* hydra/modules/sysadmin/services.scm (cuirass-without-fiber-tests): Remove
it.
(cuirass-service): Add a remote-server.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
This commit is contained in:
Mathieu Othacehe 2021-01-28 14:07:00 +01:00
parent ffe17b36e1
commit 140ce543ae
No known key found for this signature in database
GPG key ID: 8354763531769CA6
2 changed files with 14 additions and 35 deletions

View file

@ -23,6 +23,7 @@
#:use-module (gnu bootloader grub)
#:use-module (gnu services avahi)
#:use-module (gnu services base)
#:use-module (gnu services cuirass)
#:use-module (gnu services ssh)
#:use-module (gnu services mcron)
#:use-module (gnu services monitoring)
@ -89,14 +90,17 @@ nodes."
#:key
(authorized-guix-keys '())
(emulated-architectures '())
(systems
'("x86_64-linux" "i686-linux"
"aarch64-linux"))
childhurd?
(max-jobs 4)
(max-cores 16)
(build-accounts-to-max-jobs-ratio 4))
"Return the <operating-system> declaration for a build machine for
berlin.guixsd.org with integer ID, with the given
AUTHORIZED-GUIX-KEYS. Add a 'qemu-binfmt-service' for
EMULATED-ARCHITECTURES, unless it's empty."
berlin.guixsd.org with integer ID, with the given AUTHORIZED-GUIX-KEYS. Add a
'qemu-binfmt-service' for EMULATED-ARCHITECTURES, unless it's empty. Start a
Cuirass remote worker building substitutes for the given SYSTEMS."
(define gc-job
;; Run 'guix gc' at 3AM and 3PM every day.
@ -231,6 +235,10 @@ are 10022 and 15900. Keep secret-service port local."
(server-active '("141.80.167.131"))))
(service avahi-service-type
(avahi-configuration (debug? #t)))
(service cuirass-remote-worker-service-type
(cuirass-remote-worker-configuration
(workers 2)
(systems systems)))
(service mcron-service-type
(mcron-configuration
(jobs (list gc-job))))

View file

@ -422,32 +422,6 @@
(plain-file "motd"
"Welcome to the Guix build frontend!\n\n"))
(define cuirass-without-fiber-tests
(let ((commit "697fa14584551d9595cd042f1ffeba240e45a127")
(revision "57"))
(package
(inherit cuirass)
(name "cuirass-dev")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/guix/guix-cuirass.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0gw9cja8fiyra9vnn3y384gwanvsqdq6gwjcvmz91sy5lvfwv34m"))))
(inputs
`(("guile-fibers"
,(package (inherit guile-fibers)
(arguments
`(#:tests? #f
,@(package-arguments guile-fibers)))))
("guile" ,guile-3.0/libgc-7)
,@(fold alist-delete (package-inputs cuirass)
'("guile-fibers" "guile")))))))
(define KiB (expt 2 10))
(define MiB (* KiB KiB))
(define GiB (* MiB KiB))
@ -456,13 +430,10 @@
(define* (cuirass-service #:key branches systems nar-ttl)
(service cuirass-service-type
(cuirass-configuration
(cuirass cuirass-without-fiber-tests)
(interval (* 5 60))
(queue-size 100)
(ttl (quotient nar-ttl 2))
(specifications (cuirass-specs branches systems))
(queries-log-file "/var/log/cuirass-sql.log")
(web-queries-log-file "/var/log/cuirass-web-sql.log"))))
(remote-server (cuirass-remote-server-configuration
(trigger-url "http://127.0.0.1")))
(specifications (cuirass-specs branches systems)))))
(define* (frontend-services sysadmins #:key
(gc-threshold (* 800 GiB))