diff options
author | Mathieu Othacehe <m.othacehe@gmail.com> | 2017-01-25 09:54:54 +0100 |
---|---|---|
committer | Mathieu Lirzin <mthl@gnu.org> | 2017-01-29 17:19:20 +0100 |
commit | 5127c6797ca6eb5782f96f44c7c1d38263927f2b (patch) | |
tree | 81c2e569a511171f7c09fc678355bc38849c0db0 /bin | |
parent | 4ca0c93875b14fd82693bd4fd9ce2b3ecf2c6ed4 (diff) | |
download | cuirass-5127c6797ca6eb5782f96f44c7c1d38263927f2b.tar cuirass-5127c6797ca6eb5782f96f44c7c1d38263927f2b.tar.gz |
cuirass: Add "--load-path" option.
* bin/cuirass.in (%options): Add "--load-path" and "-L" command line options.
(show-help): Adapt.
* src/cuirass/base.scm (%guix-package-path): New parameter.
(set-guix-package-path!): New procedure.
(evaluate): Call "evaluate" script with '%guix-package-path'.
* bin/evaluate.in (main): Match 'guix-package-path' command line argument and
handle it.
Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
Diffstat (limited to 'bin')
-rw-r--r-- | bin/cuirass.in | 5 | ||||
-rw-r--r-- | bin/evaluate.in | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/bin/cuirass.in b/bin/cuirass.in index b41a713..7df5ddb 100644 --- a/bin/cuirass.in +++ b/bin/cuirass.in @@ -7,6 +7,7 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" !# ;;;; cuirass -- continuous integration tool ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> +;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; ;;; This file is part of Cuirass. ;;; @@ -34,6 +35,7 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" --one-shot Evaluate and build jobs only once --cache-directory=DIR Use DIR for storing repository data + -L --load-path=DIR Prepend DIR to Guix package module search path. -S --specifications=SPECFILE Add specifications from SPECFILE to database. -D --database=DB Use DB to store build results. @@ -48,6 +50,7 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" (define %options '((one-shot (value #f)) (cache-directory (value #t)) + (load-path (single-char #\L) (value #t)) (specifications (single-char #\S) (value #t)) (database (single-char #\D) (value #t)) (port (single-char #\p) (value #t)) @@ -68,6 +71,8 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" (%package-database (option-ref opts 'database (%package-database))) (%package-cachedir (option-ref opts 'cache-directory (%package-cachedir))) + (%guix-package-path + (option-ref opts 'load-path (%guix-package-path))) (%use-substitutes? (option-ref opts 'use-substitutes #f))) (cond ((option-ref opts 'help #f) diff --git a/bin/evaluate.in b/bin/evaluate.in index c8a45ce..0508783 100644 --- a/bin/evaluate.in +++ b/bin/evaluate.in @@ -8,6 +8,7 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" ;;;; evaluate -- convert a specification to a job list ;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> +;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; ;;; This file is part of Cuirass. ;;; @@ -32,7 +33,7 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" (define* (main #:optional (args (command-line))) (match args - ((command load-path cachedir specstr database) + ((command load-path guix-package-path cachedir specstr database) ;; Load FILE, a Scheme file that defines Hydra jobs. (let ((%user-module (make-fresh-user-module)) (spec (with-input-from-string specstr read)) @@ -58,6 +59,8 @@ exec ${GUILE:-@GUILE@} --no-auto-compile -e main -s "$0" "$@" (exit 1))) (parameterize ((%package-database database) (%use-substitutes? (assoc-ref spec #:use-substitutes?))) + (unless (string-null? guix-package-path) + (set-guix-package-path! guix-package-path)) ;; Call the entry point of FILE and print the resulting job sexp. (let* ((proc-name (assq-ref spec #:proc)) (proc (module-ref %user-module proc-name)) |