mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 13:58:15 -05:00
ci: Limit image and system tests jobs periodicity.
System tests and images jobs are extremely expensive in I/O operations and storage size, pass a "period" argument to Cuirass to limit their periodicity. * gnu/ci.scm (hours): New procedure, (image-jobs, system-test-jobs, tarball-jobs): set a period argument.
This commit is contained in:
parent
402f1104e5
commit
fc2fa7ad40
1 changed files with 14 additions and 2 deletions
16
gnu/ci.scm
16
gnu/ci.scm
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2017, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2018, 2019 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
|
||||
;;; Copyright © 2020 Mathieu Othacehe <othacehe@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -209,8 +210,13 @@ (define %guix-system-images
|
|||
pine64-barebones-raw-image
|
||||
pinebook-pro-barebones-raw-image))
|
||||
|
||||
(define (hours hours)
|
||||
(* 3600 hours))
|
||||
|
||||
(define (image-jobs store system)
|
||||
"Return a list of jobs that build images for SYSTEM."
|
||||
"Return a list of jobs that build images for SYSTEM. Those jobs are
|
||||
expensive in storage and I/O operations, hence their periodicity is limited by
|
||||
passing the PERIOD argument."
|
||||
(define (->alist drv)
|
||||
`((derivation . ,(derivation-file-name drv))
|
||||
(log . ,(log-file store (derivation-file-name drv)))
|
||||
|
@ -225,6 +231,7 @@ (define (->alist drv)
|
|||
(long-description . "This is a demo stand-alone image of the GNU
|
||||
system.")
|
||||
(license . ,(license-name gpl3+))
|
||||
(period . ,(hours 48))
|
||||
(max-silent-time . 600)
|
||||
(timeout . 3600)
|
||||
(home-page . ,%guix-home-page-url)
|
||||
|
@ -323,6 +330,9 @@ (define drv
|
|||
(set-guile-for-build (default-guile))
|
||||
(system-test-value test))))
|
||||
|
||||
;; Those tests are extremely expensive in I/O operations and storage
|
||||
;; size, use the "period" attribute to run them with a period of at
|
||||
;; least 48 hours.
|
||||
`((derivation . ,(derivation-file-name drv))
|
||||
(log . ,(log-file store (derivation-file-name drv)))
|
||||
(outputs . ,(filter-map (lambda (res)
|
||||
|
@ -336,6 +346,7 @@ (define drv
|
|||
(system-test-name test)))
|
||||
(long-description . ,(system-test-description test))
|
||||
(license . ,(license-name gpl3+))
|
||||
(period . ,(hours 48))
|
||||
(max-silent-time . 600)
|
||||
(timeout . 3600)
|
||||
(home-page . ,%guix-home-page-url)
|
||||
|
@ -374,7 +385,8 @@ (define (->alist drv)
|
|||
all its dependencies, and ready to be installed on \"foreign\" distributions.")
|
||||
(license . ,(license-name gpl3+))
|
||||
(home-page . ,%guix-home-page-url)
|
||||
(maintainers . ("bug-guix@gnu.org"))))
|
||||
(maintainers . ("bug-guix@gnu.org"))
|
||||
(period . ,(hours 24))))
|
||||
|
||||
(define (->job name drv)
|
||||
(let ((name (symbol-append name (string->symbol ".")
|
||||
|
|
Loading…
Reference in a new issue