guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

08/08: hydra: Add jobs for the system tests.


From: Ludovic Courtès
Subject: 08/08: hydra: Add jobs for the system tests.
Date: Mon, 20 Jun 2016 21:51:01 +0000 (UTC)

civodul pushed a commit to branch master
in repository guix.

commit e702e26a38f868bf3ffb5bbf3316d46d4c4bbb32
Author: Ludovic Courtès <address@hidden>
Date:   Mon Jun 20 23:49:47 2016 +0200

    hydra: Add jobs for the system tests.
    
    * build-aux/hydra/gnu-system.scm (%guixsd-supported-systems): New
    variable.
    (qemu-jobs): Use it.
    (system-test-jobs): New procedure.
    (hydra-jobs): Use it.
---
 build-aux/hydra/gnu-system.scm |   24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/build-aux/hydra/gnu-system.scm b/build-aux/hydra/gnu-system.scm
index d15be1b..4c27a9d 100644
--- a/build-aux/hydra/gnu-system.scm
+++ b/build-aux/hydra/gnu-system.scm
@@ -59,6 +59,7 @@
              (gnu system)
              (gnu system vm)
              (gnu system install)
+             (gnu tests)
              (srfi srfi-1)
              (srfi srfi-26)
              (ice-9 match))
@@ -129,6 +130,9 @@ SYSTEM."
          (file (string-append dir "/demo-os.scm")))
     (read-operating-system file)))
 
+(define %guixsd-supported-systems
+  '("x86_64-linux" "i686-linux"))
+
 (define (qemu-jobs store system)
   "Return a list of jobs that build QEMU images for SYSTEM."
   (define (->alist drv)
@@ -150,7 +154,7 @@ system.")
   (define MiB
     (expt 2 20))
 
-  (if (member system '("x86_64-linux" "i686-linux"))
+  (if (member system %guixsd-supported-systems)
       (list (->job 'qemu-image
                    (run-with-store store
                      (mbegin %store-monad
@@ -167,6 +171,23 @@ system.")
                                           (* 1024 MiB))))))
       '()))
 
+(define (system-test-jobs store system)
+  "Return a list of jobs for the system tests."
+  (define (->job test)
+    (let ((name (string->symbol
+                 (string-append "test." (system-test-name test)
+                                "." system))))
+      `(,name . ,(lambda ()
+                   (run-with-store store
+                     (mbegin %store-monad
+                       (set-current-system system)
+                       (set-grafting #f)
+                       (system-test-value test)))))))
+
+  (if (member system %guixsd-supported-systems)
+      (map ->job (all-system-tests))
+      '()))
+
 (define (tarball-jobs store system)
   "Return Hydra jobs to build the self-contained Guix binary tarball."
   (define (->alist drv)
@@ -274,6 +295,7 @@ valid."
                                                 system))))
                        (append (filter-map job all)
                                (qemu-jobs store system)
+                               (system-test-jobs store system)
                                (tarball-jobs store system)
                                (cross-jobs system))))
                     ((core)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]