aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/coordinator.scm
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2020-05-08 17:26:29 +0100
committerChristopher Baines <mail@cbaines.net>2020-05-08 17:26:29 +0100
commitfe4af6717d87351324afb1fabf5c03f36a981129 (patch)
tree76d2585ef293ab1e08eee378a29d5286dd743bae /guix-build-coordinator/coordinator.scm
parent6315b898754c3a5fbbc0e752743b33c9175489b1 (diff)
downloadbuild-coordinator-fe4af6717d87351324afb1fabf5c03f36a981129.tar
build-coordinator-fe4af6717d87351324afb1fabf5c03f36a981129.tar.gz
Start passing build-coordinator records to hooks
Plus more coordinator methods. This is a step towards making the allocator configurable.
Diffstat (limited to 'guix-build-coordinator/coordinator.scm')
-rw-r--r--guix-build-coordinator/coordinator.scm17
1 files changed, 10 insertions, 7 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index 0cc41d0..5bef0c3 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -66,13 +66,14 @@
hooks
metrics-registry))
-(define* (submit-build datastore derivation
+(define* (submit-build build-coordinator derivation
#:key
requested-uuid
(priority 0)
(defer-allocation? #f)
(ensure-all-related-derivations-have-builds? #f))
- (let ((uuid (or requested-uuid (random-v4-uuid))))
+ (let ((datastore (build-coordinator-datastore build-coordinator))
+ (uuid (or requested-uuid (random-v4-uuid))))
(datastore-store-derivation datastore derivation)
(when ensure-all-related-derivations-have-builds?
@@ -102,7 +103,7 @@
(unless defer-allocation?
;; This can be removed once allocation in the main coordinator process can
;; be triggered
- (allocate-builds datastore))
+ (allocate-builds build-coordinator))
uuid))
@@ -127,7 +128,10 @@
password)
password))
-(define (allocate-builds datastore)
+(define (allocate-builds build-coordinator)
+ (define datastore
+ (build-coordinator-datastore build-coordinator))
+
(datastore-replace-build-allocation-plan
datastore
(basic-build-allocation-strategy datastore))
@@ -161,8 +165,7 @@
(backtrace)
(raise-exception exn))
(lambda ()
- (allocate-builds
- (build-coordinator-datastore build-coordinator)))))
+ (allocate-builds build-coordinator))))
#:unwind? #t)))))))
trigger-build-allocation)
@@ -182,7 +185,7 @@
(lambda ()
(apply (assq-ref (build-coordinator-hooks build-coordinator)
event)
- datastore arguments)
+ build-coordinator arguments)
(datastore-delete-unprocessed-hook-event datastore id))
(lambda (key . args)
(simple-format #t "error: running ~A hook: ~A ~A\n"