summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Othacehe <m.othacehe@gmail.com>2020-06-26 10:27:50 +0200
committerMathieu Othacehe <m.othacehe@gmail.com>2020-06-26 10:32:00 +0200
commit91204db33ae07ce179dfc5dcf624f43b7b8117f5 (patch)
tree843d9c93274dcb0da40954a8ee7c883ed076ef51
parent300f6253f6a0280c7abaf922bc319387cdbd9ce5 (diff)
downloadcuirass-91204db33ae07ce179dfc5dcf624f43b7b8117f5.tar
cuirass-91204db33ae07ce179dfc5dcf624f43b7b8117f5.tar.gz
Check for derivation before creating build products.
It happens that we receive build succeeded notifications for derivations that are not stored in the Builds table. In that case, do not try to create build products. * src/cuirass/base.scm (handle-build-event): Check if the derivation is registered in the Builds table.
-rw-r--r--src/cuirass/base.scm7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/cuirass/base.scm b/src/cuirass/base.scm
index 3db9c4e..86e7da8 100644
--- a/src/cuirass/base.scm
+++ b/src/cuirass/base.scm
@@ -577,9 +577,10 @@ updating the database accordingly."
(if (valid? drv)
(begin
(log-message "build succeeded: '~a'" drv)
- (when spec
- (create-build-outputs (db-get-build drv)
- (assq-ref spec #:build-outputs)))
+ (let ((build (db-get-build drv)))
+ (when (and spec build)
+ (create-build-outputs build
+ (assq-ref spec #:build-outputs))))
(db-update-build-status! drv (build-status succeeded))
(for-each (match-lambda