mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 05:18:07 -05:00
services: guix: Support guix-build-coordinator parallel hooks.
* gnu/services/guix.scm (guix-build-coordinator-configuration-parallel-hooks): New procedure. (make-guix-build-coordinator-start-script): Accept and use #:parallel-hooks. (guix-build-coordinator-shepherd-services): Pass parallel-hooks to make-guix-build-coordinator-start-script. * doc/guix.texi (Guix Build Coordinator): Document this new field.
This commit is contained in:
parent
e176727971
commit
09aeabb9d3
2 changed files with 13 additions and 1 deletions
|
@ -35106,6 +35106,11 @@ allocation plan in the database.
|
|||
An association list of hooks. These provide a way to execute arbitrary
|
||||
code upon certain events, like a build result being processed.
|
||||
|
||||
@item @code{parallel-hooks} (default: @var{'()})
|
||||
Hooks can be configured to run in parallel. This parameter is an
|
||||
association list of hooks to do in parallel, where the key is the symbol
|
||||
for the hook and the value is the number of threads to run.
|
||||
|
||||
@item @code{guile} (default: @code{guile-3.0-latest})
|
||||
The Guile package with which to run the Guix Build Coordinator.
|
||||
|
||||
|
|
|
@ -46,6 +46,7 @@ (define-module (gnu services guix)
|
|||
guix-build-coordinator-configuration-client-communication-uri-string
|
||||
guix-build-coordinator-configuration-allocation-strategy
|
||||
guix-build-coordinator-configuration-hooks
|
||||
guix-build-coordinator-configuration-parallel-hooks
|
||||
guix-build-coordinator-configuration-guile
|
||||
|
||||
guix-build-coordinator-service-type
|
||||
|
@ -155,6 +156,8 @@ (define-record-type* <guix-build-coordinator-configuration>
|
|||
(default #~basic-build-allocation-strategy))
|
||||
(hooks guix-build-coordinator-configuration-hooks
|
||||
(default '()))
|
||||
(parallel-hooks guix-build-coordinator-configuration-parallel-hooks
|
||||
(default '()))
|
||||
(guile guix-build-coordinator-configuration-guile
|
||||
(default guile-3.0-latest)))
|
||||
|
||||
|
@ -246,6 +249,7 @@ (define* (make-guix-build-coordinator-start-script database-uri-string
|
|||
agent-communication-uri-string
|
||||
client-communication-uri-string
|
||||
(hooks '())
|
||||
(parallel-hooks '())
|
||||
(guile guile-3.0))
|
||||
(program-file
|
||||
"start-guix-build-coordinator"
|
||||
|
@ -304,7 +308,8 @@ (define* (make-guix-build-coordinator-start-script database-uri-string
|
|||
#:agent-communication-uri (string->uri
|
||||
#$agent-communication-uri-string)
|
||||
#:client-communication-uri (string->uri
|
||||
#$client-communication-uri-string)))))
|
||||
#$client-communication-uri-string)
|
||||
#:parallel-hooks (list #$@parallel-hooks)))))
|
||||
#:guile guile))
|
||||
|
||||
(define (guix-build-coordinator-shepherd-services config)
|
||||
|
@ -314,6 +319,7 @@ (define (guix-build-coordinator-shepherd-services config)
|
|||
client-communication-uri-string
|
||||
allocation-strategy
|
||||
hooks
|
||||
parallel-hooks
|
||||
guile)
|
||||
(list
|
||||
(shepherd-service
|
||||
|
@ -331,6 +337,7 @@ (define (guix-build-coordinator-shepherd-services config)
|
|||
#:client-communication-uri-string
|
||||
client-communication-uri-string
|
||||
#:hooks hooks
|
||||
#:parallel-hooks parallel-hooks
|
||||
#:guile guile))
|
||||
#:user #$user
|
||||
#:group #$group
|
||||
|
|
Loading…
Reference in a new issue