aboutsummaryrefslogtreecommitdiff
path: root/guix-qa-frontpage/manage-builds.scm
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2023-05-23 09:21:18 +0100
committerChristopher Baines <mail@cbaines.net>2023-05-23 09:22:15 +0100
commit3eb6599a12e7c7ea8c4570e34f7ad6a631d5977b (patch)
treec9c651427cb8d2b08c225f482ee59518a3a328b6 /guix-qa-frontpage/manage-builds.scm
parent13994e1916a289bff86a3796f5703606cd205ce4 (diff)
downloadqa-frontpage-3eb6599a12e7c7ea8c4570e34f7ad6a631d5977b.tar
qa-frontpage-3eb6599a12e7c7ea8c4570e34f7ad6a631d5977b.tar.gz
Make patch testing conditional on master branch substitute availability
Patch testing has been disabled manually recently as master branch substitute availability has been low, but this change automates that. While this check is quite rough, it's generally not worth submitting builds when the substitute availability for the master branch is low since the build farm will be busy with master branch builds.
Diffstat (limited to 'guix-qa-frontpage/manage-builds.scm')
-rw-r--r--guix-qa-frontpage/manage-builds.scm18
1 files changed, 17 insertions, 1 deletions
diff --git a/guix-qa-frontpage/manage-builds.scm b/guix-qa-frontpage/manage-builds.scm
index 62d98db..b05cd2b 100644
--- a/guix-qa-frontpage/manage-builds.scm
+++ b/guix-qa-frontpage/manage-builds.scm
@@ -147,7 +147,23 @@
exn))
(lambda ()
(with-throw-handler #t
- submit-builds
+ (lambda ()
+ (let* ((master-branch-substitute-availability
+ (with-sqlite-cache
+ database
+ 'master-branch-data
+ master-branch-data
+ #:ttl 6000))
+ (systems-with-low-substitute-availability
+ (get-systems-with-low-substitute-availability
+ master-branch-substitute-availability
+ (delete "i586-gnu"
+ %systems-to-submit-builds-for
+ string=?))))
+
+ (if (null? systems-with-low-substitute-availability)
+ (submit-builds)
+ (sleep 900))))
(lambda args
(display (backtrace) (current-error-port))
(newline (current-error-port)))))