aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/guix.texi5
-rw-r--r--gnu/services/guix.scm9
2 files changed, 13 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index b8c49099a4..814965b22c 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -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.
diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm
index ad7b020b69..c7dd7ec0ed 100644
--- a/gnu/services/guix.scm
+++ b/gnu/services/guix.scm
@@ -46,6 +46,7 @@
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 @@
(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 @@
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 @@
#: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 @@
client-communication-uri-string
allocation-strategy
hooks
+ parallel-hooks
guile)
(list
(shepherd-service
@@ -331,6 +337,7 @@
#:client-communication-uri-string
client-communication-uri-string
#:hooks hooks
+ #:parallel-hooks parallel-hooks
#:guile guile))
#:user #$user
#:group #$group