aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/hooks.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/hooks.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/hooks.scm')
-rw-r--r--guix-build-coordinator/hooks.scm23
1 files changed, 18 insertions, 5 deletions
diff --git a/guix-build-coordinator/hooks.scm b/guix-build-coordinator/hooks.scm
index 8fe73ae..f3edc9f 100644
--- a/guix-build-coordinator/hooks.scm
+++ b/guix-build-coordinator/hooks.scm
@@ -35,7 +35,10 @@
default-build-failure-hook
default-build-missing-inputs-hook))
-(define (default-build-success-hook datastore build-id)
+(define (default-build-success-hook build-coordinator build-id)
+ (define datastore
+ (build-coordinator-datastore build-coordinator))
+
(let ((agent-id
(datastore-agent-for-build datastore build-id)))
(display
@@ -52,7 +55,10 @@
post-publish-hook)
(mkdir-p (string-append publish-directory "/nar/lzip"))
- (lambda (datastore build-id)
+ (lambda (build-coordinator build-id)
+ (define datastore
+ (build-coordinator-datastore build-coordinator))
+
(let* ((build-details
(datastore-find-build datastore build-id))
(derivation-name
@@ -157,7 +163,10 @@
(delete-file (string-append directory "/" narinfo-filename))
(delete-file (string-append directory "/" nar-filename))))))
-(define (default-build-failure-hook datastore build-id)
+(define (default-build-failure-hook build-coordinator build-id)
+ (define datastore
+ (build-coordinator-datastore build-coordinator))
+
(let ((agent-id
(datastore-agent-for-build datastore build-id)))
(display
@@ -166,7 +175,11 @@
build-id agent-id)
(current-error-port))))
-(define (default-build-missing-inputs-hook datastore build-id missing-inputs)
+(define (default-build-missing-inputs-hook build-coordinator
+ build-id missing-inputs)
+ (define datastore
+ (build-coordinator-datastore build-coordinator))
+
(let ((build (datastore-find-build datastore build-id)))
(let ((derivation-inputs
(datastore-find-derivation-inputs datastore
@@ -196,7 +209,7 @@
(simple-format #t
"submitting build for ~A\n"
input-derivation)
- (submit-build datastore input-derivation))
+ (submit-build build-coordinator input-derivation))
(simple-format #t "~A builds exist for ~A, skipping\n"
(length builds-for-output)
missing-input)))))