Commit Graph

23 Commits (a42cf16fec114c26d16d5153053a2c6a1a3b1d11)

Author SHA1 Message Date
Ludovic Courtès a42cf16fec
base: Provide 'build-derivations' with the full list of derivations.
This improves parallelism when 'max-jobs' is large.

* src/cuirass/base.scm (build-packages): Rewrite to pass the complete
list of derivations to 'build-derivations' at once.  Handle multiple outputs.
* src/schema.sql (Builds): Make "output" part of the primary key.

Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
2017-02-24 19:33:41 +01:00
Ludovic Courtès 8c811abb31
base: Remove unnecessary 'file-exists?' call.
* src/cuirass/base.scm (fetch-repository): Remove 'file-exists?' call
before 'mkdir-p'.
2017-02-24 19:32:22 +01:00
Ludovic Courtès 61f8f75e93
base: Do not stop on the first build failure.
* src/cuirass/base.scm (process-specs): Systematically call
'set-build-options'.  Pass #:keep-going? #t.
2017-02-24 19:32:22 +01:00
Mathieu Othacehe aebad5184d
base: Handle multi-directories in load-path.
* src/cuirass/base.scm (set-guix-package-path!): Parse colon separated
directories in load-path.

Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
2017-02-06 12:47:36 +01:00
Mathieu Othacehe abd52046d5
base: Handle 'git clone' errors correctly.
Fixes https://notabug.org/mthl/cuirass/issues/1.

* src/cuirass/base.scm (fetch-repository): Return #f when 'git clone' fails.
(process-specs): Test if commit is not #f before using its value.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2017-01-29 17:28:38 +01:00
Mathieu Othacehe 5127c6797c
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>
2017-01-29 17:19:20 +01:00
Mathieu Lirzin 05eba838ea
base: Create the parent directories of '%package-cachedir'.
* src/cuirass/base.scm (fetch-repository): Use 'mkdir-p' instead of 'mkdir'
for 'cachedirectory'.
2016-12-01 20:59:43 +01:00
Mathieu Lirzin 5898e6f8f8
base: Use inner definitions instead of big anonymous procedures.
* src/cuirass/base.scm (build-packages, process-specs): Use an inner
definition instead of a big anonymous procedure.
2016-11-17 01:19:05 +01:00
Jan Nieuwenhuizen 686e31c590
base: Handle build failure.
* src/cuirass/base.scm (build-packages): Catch build failures, write
error log and update database.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2016-09-23 16:53:40 +02:00
Jan Nieuwenhuizen 5ef0701f54
base: Support tracking of a Guix package's git.
* src/schema.sql (Specifications): Add no_compile_p column.
* src/cuirass/database.scm (db-add-specification)
(db-get-specifications): Handle #:no-compile? property.
* tests/database.scm (example-spec): Adapt.
* src/cuirass/base.scm (process-specs): Skip compilation if #:no-compile?.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2016-09-23 16:50:36 +02:00
Jan Nieuwenhuizen fca42b010e
cuirass: Optionally support using of substitutes.
* bin/cuirass.in (options): Add --use-substitutes.
(show-help): Idem.
(main): Set %use-substitutes?.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2016-09-23 16:16:29 +02:00
Mathieu Lirzin ac4512897c
schema: Evaluations: Add 'revision' column.
* src/schema.sql (Evaluations): Add 'revision' column.
* src/cuirass/database.scm (db-add-evaluation): Adapt.
All callers changed.
2016-07-30 23:07:19 +02:00
Mathieu Lirzin 24bfb61e8e
schema: Builds: Add 'evaluation' column.
* src/schema.sql (Builds): Add 'evaluation' column.
* src/cuirass/database.scm (db-add-build): Adapt.
* src/cuirass/base.scm (build-packages): Likewise.
2016-07-27 14:17:10 +02:00
Mathieu Lirzin 4f82aeab16
cuirass: Move procedures to (cuirass base) module.
* bin/cuirass.in (fetch-repository, compile, evaluate, build-packages)
(process-specs): Move to ...
src/cuirass/base.scm: ... here.
2016-07-27 14:17:10 +02:00
Mathieu Lirzin efb249b056
evaluate: Use (cuirass ...) modules.
This avoids code duplication.
2016-07-25 02:37:06 +02:00
Mathieu Lirzin cf7e290dc2
maint: Update file headers. 2016-07-25 02:12:41 +02:00
Mathieu Lirzin 89b1f89cfc
Move '%program-name' to (cuirass ui) module. 2016-07-25 02:12:37 +02:00
Mathieu Lirzin efe96ced25 base: Remove unneeded 'guix-variable'. 2016-07-13 23:30:59 +02:00
Mathieu Lirzin 13db5aa618 λ all the things! 2016-07-02 15:49:34 +02:00
Mathieu Lirzin 7ae6ce0690 Add %package-cachedir parameter. 2016-07-02 15:34:40 +02:00
Mathieu Lirzin 2bace10106 Add (cuirass utils) module.
Move 'with-directory-excursion' here.
2016-07-02 03:13:29 +02:00
Mathieu Lirzin a62624301b base: Add %program-name parameter object. 2016-07-01 16:00:14 +02:00
Mathieu Lirzin 9d5fda76bb
Initial commit. 2016-05-29 19:53:17 +02:00