aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2021-12-22 11:40:43 +0000
committerChristopher Baines <mail@cbaines.net>2021-12-22 11:40:43 +0000
commit0504521fa8b7dbd3f854540c6675e777cb64121a (patch)
treec3104c2b552e42bea418842e1a4745c710c0cb2a /guix-build-coordinator
parent57093bdeabf10cadecbd049a55ffbe2f3b963596 (diff)
downloadbuild-coordinator-0504521fa8b7dbd3f854540c6675e777cb64121a.tar
build-coordinator-0504521fa8b7dbd3f854540c6675e777cb64121a.tar.gz
Store a build before storing builds that it depends on
So that the priority of the other builds can be set the first time, rather than being set incorrectly then updated.
Diffstat (limited to 'guix-build-coordinator')
-rw-r--r--guix-build-coordinator/coordinator.scm14
1 files changed, 7 insertions, 7 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm
index af2bd1e..70cfdc5 100644
--- a/guix-build-coordinator/coordinator.scm
+++ b/guix-build-coordinator/coordinator.scm
@@ -353,6 +353,13 @@
(define (build-perform-datastore-changes derivations-lacking-builds)
(lambda (_)
+ ;; Actually create a build, do this first so the derived priorities for
+ ;; the builds inserted below are informed by this build.
+ (store-build derivation-file
+ build-id
+ priority
+ tags)
+
(for-each
(lambda (related-derivation)
(let ((related-uuid (random-v4-uuid)))
@@ -366,13 +373,6 @@
0
tags)))
derivations-lacking-builds)
-
- ;; Actually create a build
- (store-build derivation-file
- build-id
- priority
- tags)
-
#t))
(call-with-duration-metric