tests: Set a hard build timeout.

* guix/tests.scm (open-connection-for-tests): Pass #:timeout to
'set-build-options'.
(call-with-external-store): Add call to 'set-build-options'.
This commit is contained in:
Ludovic Courtès 2022-02-12 15:26:35 +01:00
parent 03cde0f288
commit ef6d127190
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -85,10 +85,12 @@ (define* (open-connection-for-tests #:optional (uri (%daemon-socket-uri)))
"warning: build daemon error: ~s~%" c)
#f))
(let ((store (open-connection uri)))
;; Make sure we build everything by ourselves.
;; Make sure we build everything by ourselves. When we build something,
;; it should take at most 5 minutes.
(set-build-options store
#:use-substitutes? #f
#:substitute-urls (%test-substitute-urls))
#:substitute-urls (%test-substitute-urls)
#:timeout (* 5 60))
;; Use the bootstrap Guile when running tests, so we don't end up
;; building everything in the temporary test store.
@ -147,6 +149,9 @@ (define store
;; further.
(unsetenv "NIX_STORE_DIR"))
(lambda ()
(when store
;; Make sure we don't end up rebuilding the world for those tests.
(set-build-options store #:timeout (* 10 60)))
(proc store))
(lambda ()
(when store-variable