services: guix: Include max-allocated-builds gbc agent option.

* gnu/services/guix.scm (guix-build-coordinator-agent-configuration-max-allocated-builds):
New procedure.
(guix-build-coordinator-agent-shepherd-services): Use max-allocated-builds.
* doc/guix.texi (Guix Build Coordinator): Document this new field.
This commit is contained in:
Christopher Baines 2022-10-11 11:41:15 +01:00
parent 4230de5b98
commit e83b9fe44e
No known key found for this signature in database
GPG key ID: 5E28A33B0B84F577
2 changed files with 12 additions and 0 deletions

View file

@ -35865,6 +35865,9 @@ will use the current system it's running on as the default.
@item @code{max-parallel-builds} (default: @code{1})
The number of builds to perform in parallel.
@item @code{max-allocated-builds} (default: @code{#f})
The maximum number of builds this agent can be allocated.
@item @code{max-1min-load-average} (default: @code{#f})
Load average value to look at when considering starting new builds, if
the 1 minute load average exceeds this value, the agent will wait before

View file

@ -59,6 +59,7 @@ (define-module (gnu services guix)
guix-build-coordinator-agent-configuration-authentication
guix-build-coordinator-agent-configuration-systems
guix-build-coordinator-agent-configuration-max-parallel-builds
guix-build-coordinator-agent-configuration-max-allocated-builds
guix-build-coordinator-agent-configuration-max-1min-load-average
guix-build-coordinator-agent-configuration-derivation-substitute-urls
guix-build-coordinator-agent-configuration-non-derivation-substitute-urls
@ -177,6 +178,9 @@ (define-record-type* <guix-build-coordinator-agent-configuration>
(max-parallel-builds
guix-build-coordinator-agent-configuration-max-parallel-builds
(default 1))
(max-allocated-builds
guix-build-coordinator-agent-configuration-max-allocated-builds
(default #f))
(max-1min-load-average
guix-build-coordinator-agent-configuration-max-1min-load-average
(default #f))
@ -406,6 +410,7 @@ (define guix-build-coordinator-service-type
(define (guix-build-coordinator-agent-shepherd-services config)
(match-record config <guix-build-coordinator-agent-configuration>
(package user coordinator authentication max-parallel-builds
max-allocated-builds
max-1min-load-average
derivation-substitute-urls non-derivation-substitute-urls
systems)
@ -439,6 +444,10 @@ (define (guix-build-coordinator-agent-shepherd-services config)
token-file))))
#$(simple-format #f "--max-parallel-builds=~A"
max-parallel-builds)
#$@(if max-allocated-builds
#~(#$(simple-format #f "--max-allocated-builds=~A"
max-allocated-builds))
#~())
#$@(if max-1min-load-average
#~(#$(simple-format #f "--max-1min-load-average=~A"
max-1min-load-average))