Age | Commit message (Collapse) | Author |
|
Previously we would rely on auto-compilation of all the Guix modules.
The complete evaluation would take ~15mn on berlin.guixsd.org and
require lots of RAM. This approach should be faster since potentially
only part of the modules are rebuilt. Furthermore, as a side-effect, it
builds the derivations that 'guix pull' uses.
* build-aux/hydra/gnu-system.scm: Remove 'eval-when' form.
(hydra-jobs): New procedure.
* gnu/ci.scm (package->alist, qemu-jobs, system-test-jobs)
(tarball-jobs): Return strings for the 'license' field.
* guix/self.scm (compiled-guix)[*cli-modules*]: Add (gnu ci).
|
|
* build-aux/hydra/evaluate.scm <top level>: Add call to 'add-to-store'.
Use that as the 'file-name' attribute. Call 'primitive-load' in a
directory excursion to SOURCE.
|
|
* build-aux/hydra/gnu-system.scm: Move code to...
* gnu/ci.scm: ... here. New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
|
|
These builds shouldn't take too long. Sometimes the guest kernel
crashes and the VM gets stuck; we should be able to terminate those jobs
quickly.
* build-aux/hydra/gnu-system.scm (qemu-jobs)[->alist]: Add
'max-silent-time' and 'timeout'.
(system-test-jobs)[test->thunk]: Likewise.
|
|
* build-aux/hydra/gnu-system.scm (qemu-jobs) <usb-image>: Increase from
1024 MiB to 1500 MiB.
<flash-image>: Increase from 1024 MiB to 1500 MiB.
|
|
* build-aux/hydra/gnu-system.scm (manifests->packages): Remove 'parameterize'.
|
|
* build-aux/hydra/gnu-system.scm (arguments->manifests, manifests->packages):
New procedures.
(hydra-jobs): Add a "manifests" subset.
* doc/guix.texi (Continuous Integration): Update accordingly.
|
|
Previously, under Cuirass, we'd add "build-aux/cuirass/../hydra/../..".
But then, commit c45477d2a1a651485feede20fe0f3d15aec48b39 added this
in (gnu system vm):
(local-file (search-path %load-path
"guix/store/schema.sql"))
Since 'search-path' would not return an absolute file name, 'local-file'
would try to resolve that relative to "gnu/system", leading to:
ERROR: In procedure force:
In procedure canonicalize-path: No such file or directory: "/gnu/store/…-guix-ce573b1/gnu/system/build-aux/cuirass/../hydra/../../guix/store/schema.sql
* build-aux/hydra/gnu-system.scm <top level>: Canonicalize DIR before
adding it to %LOAD-PATH.
|
|
* build-aux/hydra/guix-modular.scm (build-job): Pass #:pull-version to
BUILD.
|
|
Fixes a regression introduced in ede121de426f9c56820852888a0b370f0ccbce49.
Reported by Mark H Weaver <mhw@netris.org>.
* build-aux/hydra/gnu-system.scm (job-name): Pass "-" as the second
argument to 'package-full-name'.
|
|
* build-aux/hydra/gnu-system.scm: Use (expand load eval) in 'eval-when'
clause so as to not poison a cat and to ensure %load-compiled-path is
properly set when the 'use-modules' clauses are expanded.
* build-aux/hydra/guix.scm: Likewise.
|
|
* build-aux/hydra/guix-modular.scm (hydra-jobs)[systems]: Define as in
gnu-system.scm.
Honor SYSTEMS.
|
|
* build-aux/hydra/guix-modular.scm (build-job): Pass #:guile-version to
'build'.
|
|
On hydra.gnu.org GUILE_LOAD_COMPILED_PATH happened to be empty so we
were fine. However on GuixSD with Cuirass, we could have a conflicting
non-empty path and .go files for some of the (guix …) and (gnu …)
modules would be taken from there.
* build-aux/hydra/gnu-system.scm: Set %load-compiled-path.
|
|
* build-aux/hydra/guix-modular.scm: Remove 'eval-when' form that fiddled
with '%load-path'.
(build-job): Load 'build-aux/build-self.scm' and call the procedure it
returns.
* build-aux/hydra/evaluate.scm: The 'build-things' replacement no longer
calls 'exit'.
|
|
* build-aux/cuirass/guix-modular.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
|
|
|
|
* build-aux/hydra/gnu-system.scm (qemu-jobs): Fix up arm qemu job.
Follow-up to 44b0303762f58badd9b9f8f1145e54b76b9d19d2.
|
|
* build-aux/hydra/gnu-system.scm (qemu-jobs): Only build the "flash image"
on arm.
|
|
* build-aux/hydra/gnu-system.scm: qemu-jobs: Work around import problem.
Follow-up to 1fe805b290f26db477bcd49be91af54f6c5d061f.
|
|
* build-aux/hydra/gnu-system.scm: Add (gnu bootloader) import.
Follow-up to de2bc8d6da0ba4e74ed083af66a22cf96f74e67f.
|
|
* build-aux/hydra/gnu-system.scm (%u-boot-systems): New
variable.
(%guixsd-supported-systems): Add armhf-linux.
(qemu-jobs): Use u-boot if system in %u-boot-systems.
|
|
* build-aux/hydra/gnu-system.scm (hydra-jobs): Define 'systems' and use
it.
|
|
* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](pointless?):
Return #t on non-Intel.
|
|
Starting from Guile 2.2.3, '%fresh-auto-compile' does what it says and
would auto-compile everything, including the compiler (see
<https://bugs.gnu.org/29226>).
* build-aux/hydra/gnu-system.scm: Call 'compile'.
|
|
This reduces max RSS from 1.3G to 1.0G.
* guix/derivations.scm (invalidate-derivation-caches!): New procedure.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use it. Add 'format'
call.
|
|
* build-aux/hydra/guix-modular.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
|
|
* build-aux/hydra/evaluate.scm (%top-srcdir): New variable.
<top level>: Pass it to 'hydra-jobs'.
|
|
* build-aux/hydra/gnu-system.scm (package->job): Create a 'base.' job
when PACKAGE is a member of BASE-PACKAGES.
(all-packages)[adjust]: New procedure.
Fold over %FINAL-INPUTS and add it to the result.
|
|
* build-aux/hydra/gnu-system.scm (all-packages): Pass #:select? to
'fold-packages'.
|
|
* build-aux/hydra/gnu-system.scm (all-packages): New procedure, with
body taken from...
(hydra-jobs): ... here. Use it.
|
|
* build-aux/hydra/evaluate.scm: Support "cuirass" command line option.
* Makefile.am (cuirass-jobs.scm): New target.
|
|
* build-aux/hydra/gnu-system.scm (hydra-jobs): Support subset of
packages: ("name[@version" ...).
|
|
* build-aux/hydra/gnu-system.scm (hydra-jobs): Support subset "hello".
* build-aux/cuirass/gnu-system.scm: New file.
* doc/guix.texi (Continuous Integration): Update example spec.
|
|
* build-aux/hydra/guix.scm (package->alist): Disable grafting.
(hydra-jobs): Return 'guix.SYSTEM' jobs in addition to 'tarball'.
|
|
* build-aux/hydra/guix.scm (tarball-package): Remove.
(hydra-jobs): Use 'dist-package' instead of 'tarball-package'.
|
|
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add 'iso9660-image .
* gnu/build/vm.scm (make-iso9660-image): New variable. Export it.
* gnu/system/vm.scm (iso9660-image): New variable. Use make-iso9660-image.
(system-disk-image): Use iso9660-image.
|
|
* build-aux/hydra/gnu-system.scm (package->job): Compute PACKAGE's
derivation; return #f if 'substitutable-derivation?' returns #f.
|
|
* build-aux/hydra/gnu-system.scm (%core-packages): Add GUILE-2.2.
|
|
* build-aux/hydra/evaluate.scm: Add 'time-monotonic' workaround for
Guile 2.2.
|
|
* build-aux/hydra/gnu-system.scm (hydra-jobs): When iterating over the
packages, exclude those that match 'package-superseded'.
|
|
Most conflicts are from 6fd52309b8f52c9bb59fccffac53e029ce94b698.
|
|
This is a followup to 6b63c43e0661406bf9e8c4c54f517744fc2ffdb3.
* build-aux/hydra/gnu-system.scm (tarball-jobs): Pass #:localstatedir? #t
to 'self-contained-tarball'.
|
|
|
|
* gnu/system/install.scm (self-contained-tarball): Move to...
* guix/scripts/pack.scm: ... here. New file.
* doc/guix.texi (Binary Installation): Mention 'guix pack'.
(Invoking guix pack): New node.
* build-aux/make-binary-tarball.scm: Remove.
* Makefile.am (MODULES): Add guix/scripts/pack.scm.
(EXTRA_DIST): Remove build-aux/make-binary-tarball.scm.
(guix-binary.%.tar.xz): Rewrite using 'guix pack'.
* build-aux/hydra/gnu-system.scm (tarball-jobs): Adjust accordingly.
|
|
|
|
Fixes <http://bugs.gnu.org/26022>.
Reported by Efraim Flashner <efraim@flashner.co.il>.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](from-32-to-64?):
Check whether TARGET contains "64" rather than checking whether TARGET
ends in "64", which is rarely the case.
(same?): Add special case for armhf-linux.
|
|
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"aarch64-linux-gnu".
|
|
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"aarch64-linux-gnu".
|
|
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i586-pc-gnu".
|