[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
From: |
Jan Nieuwenhuizen |
Date: |
Mon, 18 Sep 2017 11:42:37 -0400 (EDT) |
branch: master
commit bbab646926714ad6cdaac3e4578a14b408b65a84
Author: Jan Nieuwenhuizen <address@hidden>
Date: Sat Sep 16 14:40:12 2017 +0200
gnu-system: Accept subset with list of package names.
* examples/gnu-system.scm (hydra-jobs): Accept subset with list of package
names.
---
examples/gnu-system.scm | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/examples/gnu-system.scm b/examples/gnu-system.scm
index 4076786..ee2b571 100644
--- a/examples/gnu-system.scm
+++ b/examples/gnu-system.scm
@@ -2,6 +2,7 @@
;;;
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <address@hidden>
;;; Copyright © 2016 Mathieu Lirzin <address@hidden>
+;;; Copyright © 2017 Jan Nieuwenhuizen <address@hidden>
;;;
;;; This file is part of Cuirass.
;;;
@@ -163,9 +164,10 @@ valid."
"Return Hydra jobs."
(define subset
(match (assoc-ref arguments 'subset)
- ("core" 'core) ; only build core packages
- ("hello" 'hello) ; only build hello
- (_ 'all))) ; build everything
+ ("core" 'core) ; only build core packages
+ ("hello" 'hello) ; only build hello
+ (((? string?) (? string?) ...) 'list) ; only build selected list of
packages
+ (_ 'all))) ; build everything
(define (cross-jobs system)
(define (from-32-to-64? target)
@@ -226,6 +228,16 @@ valid."
(let ((hello (specification->package "hello")))
(list (package-job store (%job-name hello) hello
system)))
'()))
+ ((list)
+ ;; Build selected list of packages only.
+ (if (string=? system (%current-system))
+ (let* ((names (assoc-ref arguments 'subset))
+ (packages (map specification->package names)))
+ (map (lambda (package)
+ (package-job store (%job-name package)
+ package system))
+ packages))
+ '()))
(else
(error "unknown subset" subset))))
%hydra-supported-systems)))