aboutsummaryrefslogtreecommitdiff
path: root/src
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 /src
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.
Diffstat (limited to 'src')
-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