aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/hooks.scm
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2020-12-21 17:23:57 +0000
committerChristopher Baines <mail@cbaines.net>2020-12-21 17:24:16 +0000
commit7acadc1f770f2e94c2b9af463c4f6ad69b6fedb1 (patch)
tree47540c07afcff449b16861888747f6fc1aafc88e /guix-build-coordinator/hooks.scm
parentda261a3a37f1c7260b727771c480f5084d95391b (diff)
downloadbuild-coordinator-7acadc1f770f2e94c2b9af463c4f6ad69b6fedb1.tar
build-coordinator-7acadc1f770f2e94c2b9af463c4f6ad69b6fedb1.tar.gz
Add build-canceled-send-event-to-guix-data-service-hook
Diffstat (limited to 'guix-build-coordinator/hooks.scm')
-rw-r--r--guix-build-coordinator/hooks.scm21
1 files changed, 20 insertions, 1 deletions
diff --git a/guix-build-coordinator/hooks.scm b/guix-build-coordinator/hooks.scm
index 38f0a80..a4a8299 100644
--- a/guix-build-coordinator/hooks.scm
+++ b/guix-build-coordinator/hooks.scm
@@ -49,7 +49,8 @@
build-submitted-send-event-to-guix-data-service-hook
build-started-send-event-to-guix-data-service-hook
build-success-send-event-to-guix-data-service-hook
- build-failure-send-event-to-guix-data-service-hook))
+ build-failure-send-event-to-guix-data-service-hook
+ build-canceled-send-event-to-guix-data-service-hook))
(define (default-build-submitted-hook build-coordinator build-id)
(display
@@ -505,3 +506,21 @@
(assq-ref build-details
'end-time)))))
'())))))))
+
+(define (build-canceled-send-event-to-guix-data-service-hook target-url)
+ (lambda (build-coordinator build-id)
+ (define datastore
+ (build-coordinator-datastore build-coordinator))
+
+ (let ((build-details
+ (datastore-find-build datastore build-id)))
+
+ (send-build-event-to-guix-data-service
+ target-url
+ `((type . build)
+ (event . canceled)
+ (build_id . ,build-id)
+ (derivation . ,(assq-ref build-details 'derivation-name))
+ ;; TODO Maybe the time of the actual cancelation should be stored or
+ ;; included in the event
+ (timestamp . ,(current-time)))))))