* src/cuirass/base.scm (copy-repository-cache) : New procedure.
(fetch-repository): Use latest-repository-commit to fetch git
repository instead of raw git system commands.
(process-specs): Use fetch-repository to get a store directory
containing the repository described in SPEC, add copy it to cache with
"copy-repository-cache".
* configure.ac: Check (guix git) module presence.
* src/cuirass/utils.scm (mkdir-p, make-user-module,
call-with-temporary-directory, with-directory-excursion): Remove because
already defined in guix.
* tests/utils (with-directory-excursion): Remove associated test.
* src/cuirass/base.scm: Use (guix build utils) to provide procedure removed
from (cuirass utils).
* bin/evaluate.in: Ditto.
* bin/cuirass.in: Use "make-user-module" provided by (guix ui).
Fixes a regression introduced in
a42cf16fec whereby build logs would go the
Cuirass' stderr.
* src/cuirass/base.scm (build-packages): Parameterize
'current-build-output-port' to a void output port.
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>
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>
* 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>