mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38: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
|
An association list of hooks. These provide a way to execute arbitrary
|
||||||
code upon certain events, like a build result being processed.
|
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})
|
@item @code{guile} (default: @code{guile-3.0-latest})
|
||||||
The Guile package with which to run the Guix Build Coordinator.
|
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-client-communication-uri-string
|
||||||
guix-build-coordinator-configuration-allocation-strategy
|
guix-build-coordinator-configuration-allocation-strategy
|
||||||
guix-build-coordinator-configuration-hooks
|
guix-build-coordinator-configuration-hooks
|
||||||
|
guix-build-coordinator-configuration-parallel-hooks
|
||||||
guix-build-coordinator-configuration-guile
|
guix-build-coordinator-configuration-guile
|
||||||
|
|
||||||
guix-build-coordinator-service-type
|
guix-build-coordinator-service-type
|
||||||
|
@ -155,6 +156,8 @@ (define-record-type* <guix-build-coordinator-configuration>
|
||||||
(default #~basic-build-allocation-strategy))
|
(default #~basic-build-allocation-strategy))
|
||||||
(hooks guix-build-coordinator-configuration-hooks
|
(hooks guix-build-coordinator-configuration-hooks
|
||||||
(default '()))
|
(default '()))
|
||||||
|
(parallel-hooks guix-build-coordinator-configuration-parallel-hooks
|
||||||
|
(default '()))
|
||||||
(guile guix-build-coordinator-configuration-guile
|
(guile guix-build-coordinator-configuration-guile
|
||||||
(default guile-3.0-latest)))
|
(default guile-3.0-latest)))
|
||||||
|
|
||||||
|
@ -246,6 +249,7 @@ (define* (make-guix-build-coordinator-start-script database-uri-string
|
||||||
agent-communication-uri-string
|
agent-communication-uri-string
|
||||||
client-communication-uri-string
|
client-communication-uri-string
|
||||||
(hooks '())
|
(hooks '())
|
||||||
|
(parallel-hooks '())
|
||||||
(guile guile-3.0))
|
(guile guile-3.0))
|
||||||
(program-file
|
(program-file
|
||||||
"start-guix-build-coordinator"
|
"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->uri
|
||||||
#$agent-communication-uri-string)
|
#$agent-communication-uri-string)
|
||||||
#:client-communication-uri (string->uri
|
#:client-communication-uri (string->uri
|
||||||
#$client-communication-uri-string)))))
|
#$client-communication-uri-string)
|
||||||
|
#:parallel-hooks (list #$@parallel-hooks)))))
|
||||||
#:guile guile))
|
#:guile guile))
|
||||||
|
|
||||||
(define (guix-build-coordinator-shepherd-services config)
|
(define (guix-build-coordinator-shepherd-services config)
|
||||||
|
@ -314,6 +319,7 @@ (define (guix-build-coordinator-shepherd-services config)
|
||||||
client-communication-uri-string
|
client-communication-uri-string
|
||||||
allocation-strategy
|
allocation-strategy
|
||||||
hooks
|
hooks
|
||||||
|
parallel-hooks
|
||||||
guile)
|
guile)
|
||||||
(list
|
(list
|
||||||
(shepherd-service
|
(shepherd-service
|
||||||
|
@ -331,6 +337,7 @@ (define (guix-build-coordinator-shepherd-services config)
|
||||||
#:client-communication-uri-string
|
#:client-communication-uri-string
|
||||||
client-communication-uri-string
|
client-communication-uri-string
|
||||||
#:hooks hooks
|
#:hooks hooks
|
||||||
|
#:parallel-hooks parallel-hooks
|
||||||
#:guile guile))
|
#:guile guile))
|
||||||
#:user #$user
|
#:user #$user
|
||||||
#:group #$group
|
#:group #$group
|
||||||
|
|
Loading…
Reference in a new issue