summaryrefslogtreecommitdiff
path: root/build-aux/hydra/gnu-system.scm
Commit message (Expand)AuthorAgeFilesLines
* hydra: evaluate: Use 'with-build-handler'.•••* build-aux/hydra/evaluate.scm (command-line): Remove 'set!' for 'build-things'. Use 'with-build-handler' instead. * build-aux/hydra/gnu-system.scm (hydra-jobs): Add comment about removing 'show-what-to-build' call. Ludovic Courtès2020-03-221-0/+2
* hydra: Remove uses of _IOLBF.•••_IOLBF & co. were deprecated in Guile 2.2 and removed in 3.0. * build-aux/hydra/gnu-system.scm: Pass 'line instead of _IOLBF to 'setvbuf'. * build-aux/hydra/guix-modular.scm: Likewise. Ludovic Courtès2020-03-051-2/+2
* ci: Make sure the Guix checkout is the one providing Cuirass proc.•••Fixes <https://bugs.gnu.org/36378>. Reported by Reza Alizadeh Majd <r.majd@pantherx.org>. * build-aux/hydra/gnu-system.scm (find-current-checkout): New procedure. (hydra-jobs): Use FIND-CURRENT-CHECKOUT to define CHECKOUT. Pass it to the inferior Guix as an extra argument whose key is 'superior-guix-checkout'. * gnu/ci.scm (find-current-checkout): New procedure. (hydra-jobs): Use FIND-CURRENT-CHECKOUT to define CHECKOUT. This will return '#f' if the current Guix is an inferior. In that case, use the 'superior-guix-checkout' argument provided by the superior Guix. Clément Lassieur2019-12-011-14/+22
* hydra: Compute jobs in an inferior.•••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). Ludovic Courtès2019-01-061-28/+45
* hydra: Move job definitions to (gnu ci).•••* build-aux/hydra/gnu-system.scm: Move code to... * gnu/ci.scm: ... here. New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Ludovic Courtès2019-01-061-404/+3
* hydra: Use short timeouts for the QEMU jobs and system tests.•••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. Ludovic Courtès2018-12-291-0/+4
* hydra: Increase image sizes for USB image and Flash image.•••* 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. Danny Milosavljevic2018-12-091-2/+2
* hydra: Remove useless 'parameterize'.•••* build-aux/hydra/gnu-system.scm (manifests->packages): Remove 'parameterize'. Clément Lassieur2018-09-141-6/+5
* hydra: Add support for manifests.•••* 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. Clément Lassieur2018-09-131-0/+35
* hydra: Make sure we add an absolute file name to the load path.•••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. Ludovic Courtès2018-06-151-1/+2
* hydra: Switch back to "-" instead of "@" in package job names.•••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'. Ludovic Courtès2018-05-121-1/+2
* hydra: Fix uses of 'eval-when'.•••* 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. Ludovic Courtès2018-04-091-1/+1
* hydra: Clear '%load-compiled-path' for gnu-system.scm.•••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. Ludovic Courtès2018-04-081-0/+9
* Merge branch 'master' into core-updatesMarius Bakke2018-02-011-15/+32
|\
| * hydra: Fix up arm qemu job.•••* build-aux/hydra/gnu-system.scm (qemu-jobs): Fix up arm qemu job. Follow-up to 44b0303762f58badd9b9f8f1145e54b76b9d19d2. Danny Milosavljevic2018-01-291-1/+1
| * hydra: Only build the "flash image" on arm.•••* build-aux/hydra/gnu-system.scm (qemu-jobs): Only build the "flash image" on arm. Danny Milosavljevic2018-01-291-22/+26
| * hydra: Work around import problem.•••* build-aux/hydra/gnu-system.scm: qemu-jobs: Work around import problem. Follow-up to 1fe805b290f26db477bcd49be91af54f6c5d061f. Danny Milosavljevic2018-01-291-1/+1
| * hydra: Add (gnu bootloader) import.•••* build-aux/hydra/gnu-system.scm: Add (gnu bootloader) import. Follow-up to de2bc8d6da0ba4e74ed083af66a22cf96f74e67f. Danny Milosavljevic2018-01-291-0/+1
| * hydra: Add arm image builder.•••* 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. Danny Milosavljevic2018-01-291-2/+14
* | hydra: Make the list of target systems a parameter.•••* build-aux/hydra/gnu-system.scm (hydra-jobs): Define 'systems' and use it. Ludovic Courtès2018-01-211-2/+8
* | hydra: Do not cross-build from non-Intel platforms.•••* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](pointless?): Return #t on non-Intel. Ludovic Courtès2017-12-291-2/+9
|/
* hydra: Pre-load the compiler.•••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'. Ludovic Courtès2017-12-131-4/+6
* hydra: Invalidate derivation caches after each architecture evaluation.•••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. Ludovic Courtès2017-12-131-0/+7
* hydra: Add jobs for all of '%final-inputs'.•••* 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. Ludovic Courtès2017-11-071-11/+17
* hydra: Build hidden packages.•••* build-aux/hydra/gnu-system.scm (all-packages): Pass #:select? to 'fold-packages'. Ludovic Courtès2017-11-071-1/+2
* hydra: Factorize package list creation.•••* build-aux/hydra/gnu-system.scm (all-packages): New procedure, with body taken from... (hydra-jobs): ... here. Use it. Ludovic Courtès2017-11-071-11/+14
* cuirass: Support subset with list of package[@version].•••* build-aux/hydra/gnu-system.scm (hydra-jobs): Support subset of packages: ("name[@version" ...). Jan Nieuwenhuizen2017-09-271-0/+12
* cuirass: Add gnu-system build spec.•••* 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. Jan Nieuwenhuizen2017-09-271-0/+7
* build: Add iso9660 system image generator.•••* 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. Danny Milosavljevic2017-07-031-1/+8
* hydra: Don't build non-substitutable packages.•••* build-aux/hydra/gnu-system.scm (package->job): Compute PACKAGE's derivation; return #f if 'substitutable-derivation?' returns #f. Ludovic Courtès2017-06-151-1/+5
* hydra: Cross-build Guile 2.2.•••* build-aux/hydra/gnu-system.scm (%core-packages): Add GUILE-2.2. Ludovic Courtès2017-05-161-1/+1
* hydra: Don't build deprecated packages.•••* build-aux/hydra/gnu-system.scm (hydra-jobs): When iterating over the packages, exclude those that match 'package-superseded'. Ludovic Courtès2017-03-301-5/+8
* Merge branch 'master' into core-updates•••Most conflicts are from 6fd52309b8f52c9bb59fccffac53e029ce94b698. Marius Bakke2017-03-301-0/+1
|\
| * hydra: Include the localstatedir in the binary tarball.•••This is a followup to 6b63c43e0661406bf9e8c4c54f517744fc2ffdb3. * build-aux/hydra/gnu-system.scm (tarball-jobs): Pass #:localstatedir? #t to 'self-contained-tarball'. Ludovic Courtès2017-03-301-0/+1
* | Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner2017-03-131-1/+8
|\|
| * Add 'guix pack'.•••* 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. Ludovic Courtès2017-03-121-1/+8
* | Merge branch 'master' into core-updatesLudovic Courtès2017-03-091-2/+5
|\|
| * hydra: Really disable 32-to-64-bit cross-builds.•••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. Ludovic Courtès2017-03-091-3/+6
| * hydra: Add "aarch64-linux-gnu" as a cross-compilation target.•••* build-aux/hydra/gnu-system.scm (%cross-targets): Add "aarch64-linux-gnu". Efraim Flashner2017-02-141-0/+1
* | hydra: Add "aarch64-linux-gnu" as a cross-compilation target.•••* build-aux/hydra/gnu-system.scm (%cross-targets): Add "aarch64-linux-gnu". Efraim Flashner2017-02-171-0/+1
* | hydra: Add "i586-pc-gnu" as a cross-compilation target.•••* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i586-pc-gnu". Ludovic Courtès2017-01-201-2/+3
* | Merge branch 'master' into core-updatesLeo Famulari2017-01-061-20/+13
|\|
| * hydra: Remove 'qemu-image' job.•••As per the discussion at <https://lists.gnu.org/archive/html/guix-devel/2016-12/msg01098.html>. * build-aux/hydra/gnu-system.scm (demo-os): Remove. (qemu-jobs): Remove 'qemu-image' job. * build-aux/hydra/demo-os.scm: Remove. Ludovic Courtès2016-12-311-14/+1
| * hydra: Fix wrong-num-args error when computing the cross jobs.•••Fixes a regression introduced in dea91108cf6b9bb46071c8f65c9abf834c5b064d. * build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](either): Add third parameter and honor it. Ludovic Courtès2016-12-081-2/+2
| * hydra: Adjust to make-bootstrap.scm change.•••This is a followup to commit f13f60cb2620433280ccb2132376b7c6d3dbc06f. * build-aux/hydra/gnu-system.scm (%core-packages): Call '%glibc-bootstrap-tarball' since it's now a thunk, not a package. Ludovic Courtès2016-12-081-1/+1
| * hydra: Use '%final-inputs' from base.scm, not commencement.scm.•••* build-aux/hydra/gnu-system.scm (package->job): Use the '%final-inputs' procedure from (gnu packages base). Ludovic Courtès2016-12-081-2/+1
| * hydra: Add "i686-w64-mingw32" as a cross-compilation target.•••* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i686-w64-mingw32". (hydra-jobs)[cross-jobs?](pointless?): New procedure. Use it. Ludovic Courtès2016-12-071-2/+9
* | hydra: Add "powerpc-linux-gnu" as a cross-compilation target.•••* build-aux/hydra/gnu-system.scm (%cross-targets): Add "powerpc-linux-gnu". Ludovic Courtès2017-01-051-2/+3
|/
* hydra: Add "arm-linux-gnueabihf" as a cross-compilation target.•••* build-aux/hydra/gnu-system.scm (%cross-targets): Add "arm-linux-gnueabihf". Ludovic Courtès2016-10-201-1/+2
* hydra: Fix the construction of system test jobs.•••* build-aux/hydra/gnu-system.scm (system-test-jobs)[test->thunk]: New procedure. [->job]: Use it. Ludovic Courtès2016-06-211-7/+19