aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2025-02-05 11:56:46 +0000
committerChristopher Baines <mail@cbaines.net>2025-02-05 11:56:46 +0000
commita7d84192d79bea8ef8a1c966d9ff72f2269dedc1 (patch)
tree85b2bad34388762c88035a9a234d4fd7b638e70e
parentd588c9c1920b863a17b68e5fe15b8f9d7bb1969d (diff)
downloadbuild-coordinator-a7d84192d79bea8ef8a1c966d9ff72f2269dedc1.tar
build-coordinator-a7d84192d79bea8ef8a1c966d9ff72f2269dedc1.tar.gz
Check the requested build exists in a few client operations
-rw-r--r--guix-build-coordinator/coordinator.scm12
1 files changed, 12 insertions, 0 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index 71dffb7..e72c5b4 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -850,6 +850,10 @@
datastore
(lambda (db)
(let ((build-details (datastore-find-build datastore uuid)))
+ (unless build-details
+ (raise-exception
+ (make-client-error 'build-unknown)))
+
(when (assq-ref build-details 'canceled)
(raise-exception
(make-client-error 'build-already-canceled)))
@@ -893,6 +897,10 @@
val))
+ (unless (datastore-find-build datastore uuid)
+ (raise-exception
+ (make-client-error 'build-unknown)))
+
(if ignore-if-build-required-by-another?
(let ((build-required
;; Do this check here outside the transaction to avoid having to
@@ -915,6 +923,10 @@
datastore
(lambda (db)
(let ((build-details (datastore-find-build datastore uuid)))
+ (unless build-details
+ (raise-exception
+ (make-client-error 'build-unknown)))
+
(when (assq-ref build-details 'canceled)
(raise-exception
(make-client-error 'build-already-canceled)))