From c5cf45e9068e4c1f97f7357a3c051b2ad19f5e25 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 1 Oct 2020 15:57:27 +0200 Subject: [PATCH] ci: Add log and outputs keys. Add 'log and 'outputs properties to hydra objects. This way Cuirass won't have to go through every derivation to add those properties. * gnu/ci.scm (package->alist, image-jobs, system-test-jobs, tarball-jobs): Add 'log and 'outputs properties. * build-aux/hydra/guix-modular.scm (build-job): Ditto. --- build-aux/hydra/guix-modular.scm | 6 ++++++ gnu/ci.scm | 24 ++++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/build-aux/hydra/guix-modular.scm b/build-aux/hydra/guix-modular.scm index c70e9d8d55..060b84b8ef 100644 --- a/build-aux/hydra/guix-modular.scm +++ b/build-aux/hydra/guix-modular.scm @@ -48,6 +48,12 @@ (define build #:pull-version 1 #:guile-version "2.2")))) `((derivation . ,(derivation-file-name drv)) ;the latest 2.2.x + (log . ,(log-file store (derivation-file-name drv))) + (outputs . ,(filter-map (lambda (res) + (match res + ((name . path) + `(,name . ,path)))) + (derivation->output-paths drv))) (nix-name . ,(derivation-name drv)) (system . ,(derivation-system drv)) (description . "Modular Guix") diff --git a/gnu/ci.scm b/gnu/ci.scm index c985cd653b..fc35be87b4 100644 --- a/gnu/ci.scm +++ b/gnu/ci.scm @@ -78,6 +78,12 @@ (define* (package->alist store package system (let ((drv (package-derivation store package system #:graft? #f))) `((derivation . ,(derivation-file-name drv)) + (log . ,(log-file store (derivation-file-name drv))) + (outputs . ,(filter-map (lambda (res) + (match res + ((name . path) + `(,name . ,path)))) + (derivation->output-paths drv))) (nix-name . ,(derivation-name drv)) (system . ,(derivation-system drv)) (description . ,(package-synopsis package)) @@ -203,6 +209,12 @@ (define (image-jobs store system) "Return a list of jobs that build images for SYSTEM." (define (->alist drv) `((derivation . ,(derivation-file-name drv)) + (log . ,(log-file store (derivation-file-name drv))) + (outputs . ,(filter-map (lambda (res) + (match res + ((name . path) + `(,name . ,path)))) + (derivation->output-paths drv))) (nix-name . ,(derivation-name drv)) (system . ,(derivation-system drv)) (description . "Stand-alone image of the GNU system") @@ -308,6 +320,12 @@ (define drv (system-test-value test)))) `((derivation . ,(derivation-file-name drv)) + (log . ,(log-file store (derivation-file-name drv))) + (outputs . ,(filter-map (lambda (res) + (match res + ((name . path) + `(,name . ,path)))) + (derivation->output-paths drv))) (nix-name . ,(derivation-name drv)) (system . ,(derivation-system drv)) (description . ,(format #f "Guix '~a' system test" @@ -339,6 +357,12 @@ (define (tarball-jobs store system) "Return Hydra jobs to build the self-contained Guix binary tarball." (define (->alist drv) `((derivation . ,(derivation-file-name drv)) + (log . ,(log-file store (derivation-file-name drv))) + (outputs . ,(filter-map (lambda (res) + (match res + ((name . path) + `(,name . ,path)))) + (derivation->output-paths drv))) (nix-name . ,(derivation-name drv)) (system . ,(derivation-system drv)) (description . "Stand-alone binary Guix tarball")