aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/coordinator.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-build-coordinator/coordinator.scm')
-rw-r--r--guix-build-coordinator/coordinator.scm25
1 files changed, 17 insertions, 8 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index 5b57823..f0987a4 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -47,7 +47,7 @@
new-agent-password
fetch-builds
agent-details
- make-build-allocator-thread
+ trigger-build-allocation
start-hook-processing-thread
build-output-file-location
@@ -62,23 +62,29 @@
(datastore build-coordinator-datastore)
(hooks build-coordinator-hooks)
(metrics-registry build-coordinator-metrics-registry)
- (allocation-strategy build-coordinator-allocation-strategy))
+ (allocation-strategy build-coordinator-allocation-strategy)
+ (allocator-thread build-coordinator-allocator-thread
+ set-build-coordinator-allocator-thread!))
(define* (make-build-coordinator #:key datastore hooks
(metrics-registry (make-metrics-registry))
(allocation-strategy
basic-build-allocation-strategy))
- (make-build-coordinator-record
- datastore
- hooks
- metrics-registry
- allocation-strategy))
+ (let ((build-coordinator
+ (make-build-coordinator-record datastore
+ hooks
+ metrics-registry
+ allocation-strategy)))
+ (set-build-coordinator-allocator-thread!
+ build-coordinator
+ (make-build-allocator-thread build-coordinator))
+
+ build-coordinator))
(define* (submit-build build-coordinator derivation
#:key
requested-uuid
(priority 0)
- (defer-allocation? #f)
(ensure-all-related-derivation-outputs-have-builds? #f))
(let ((datastore (build-coordinator-datastore build-coordinator))
(uuid (or requested-uuid (random-v4-uuid))))
@@ -136,6 +142,9 @@
password)
password))
+(define (trigger-build-allocation build-coordinator)
+ ((build-coordinator-allocator-thread build-coordinator)))
+
(define (allocate-builds build-coordinator)
(define datastore
(build-coordinator-datastore build-coordinator))