diff options
author | Christopher Baines <mail@cbaines.net> | 2020-05-08 17:26:29 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2020-05-08 17:26:29 +0100 |
commit | fe4af6717d87351324afb1fabf5c03f36a981129 (patch) | |
tree | 76d2585ef293ab1e08eee378a29d5286dd743bae /guix-build-coordinator/hooks.scm | |
parent | 6315b898754c3a5fbbc0e752743b33c9175489b1 (diff) | |
download | build-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.scm | 23 |
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))))) |