From e340a5aae98cc0cb5b6ca8a42e0a61dc55fb184f Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 20 Dec 2023 09:54:36 +0000 Subject: Use guix-channel-job-gexp for gn-transform-databases CI job. * genenetwork-development.scm: Import (guix ci). (transform-genenetwork-database-tests): Delete variable. (%default-guix-channel-with-substitutes): New variable. (transform-genenetwork-database-project): Use guix-channel-job-gexp for transform-genenetwork-database-tests CI job. * genenetwork/development-helper.scm: Delete file. --- genenetwork-development.scm | 29 +++++++++-------------- genenetwork/development-helper.scm | 47 -------------------------------------- 2 files changed, 11 insertions(+), 65 deletions(-) delete mode 100644 genenetwork/development-helper.scm diff --git a/genenetwork-development.scm b/genenetwork-development.scm index 0890c5c..19023bd 100644 --- a/genenetwork-development.scm +++ b/genenetwork-development.scm @@ -54,6 +54,7 @@ (gnu system file-systems) (guix build-system gnu) (guix channels) + (guix ci) (guix git-download) (guix least-authority) ((guix licenses) #:prefix license:) @@ -79,6 +80,10 @@ (define %guix-daemon-uri "/var/host-guix/daemon-socket/socket") +(define %default-guix-channel-with-substitutes + (channel-with-substitutes-available %default-guix-channel + "https://ci.guix.gnu.org")) + ;; We cannot refer to sudo in the store since that sudo does not have ;; the setuid bit set. See "(guix) Setuid Programs". (define sudo @@ -758,20 +763,6 @@ described by CONFIG, a object." (description "run64 is a SRFI-64 test runner for Scheme.") (license license:gpl3+))) -(define transform-genenetwork-database-tests - (with-imported-modules (source-module-closure '((genenetwork development-helper)) - #:select? import-module?) - #~(lambda (source) - ((@@ (genenetwork development-helper) - command-in-source-gexp) - source - #$(profile - (content (packages->manifest - (list gnu-make guile-3.0 guile-dbi guile-dbd-mysql - ccwl guile-libyaml guile-sparql run64))) - (allow-collisions? #t)) - (list "make" "check"))))) - (define (transform-genenetwork-database project) (with-imported-modules '((guix build utils)) (with-packages (list ccwl git-minimal gnu-make guile-3.0 guile-dbd-mysql @@ -825,10 +816,12 @@ described by CONFIG, a object." (repository "https://git.genenetwork.org/gn-transform-databases/") (ci-jobs (list (forge-laminar-job (name "transform-genenetwork-database-tests") - (run (derivation-job-gexp - this-forge-project - this-forge-laminar-job - transform-genenetwork-database-tests + (run (guix-channel-job-gexp + (list (channel + (name 'gn-bioinformatics) + (url (forge-project-repository this-forge-project)) + (branch "master")) + %default-guix-channel-with-substitutes) #:guix-daemon-uri %guix-daemon-uri))) (forge-laminar-job (name "transform-genenetwork-database") diff --git a/genenetwork/development-helper.scm b/genenetwork/development-helper.scm deleted file mode 100644 index 20edfbf..0000000 --- a/genenetwork/development-helper.scm +++ /dev/null @@ -1,47 +0,0 @@ -;;; genenetwork-machines --- Guix configuration for genenetwork machines -;;; Copyright © 2022, 2023 Arun Isaac -;;; Copyright © 2022 Frederick Muriuki Muriithi -;;; -;;; This file is part of genenetwork-machines. -;;; -;;; genenetwork-machines is free software: you can redistribute it -;;; and/or modify it under the terms of the GNU General Public License -;;; as published by the Free Software Foundation, either version 3 of -;;; the License, or (at your option) any later version. -;;; -;;; genenetwork-machines is distributed in the hope that it will be -;;; useful, but WITHOUT ANY WARRANTY; without even the implied -;;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -;;; See the GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with genenetwork-machines. If not, see -;;; . - -(define-module (genenetwork development-helper) - #:use-module (ice-9 match) - #:use-module (guix gexp) - #:use-module (guix profiles) - #:use-module (guix search-paths) - #:use-module (forge build utils)) - -(define (command-in-source-gexp source profile command) - "Return a G-expression that runs COMMAND in PROFILE and with SOURCE -as the current directory. SOURCE and PROFILE are store items. COMMAND -is a list of strings specifying the command to be executed." - (with-imported-modules '((guix build utils)) - (with-profile profile - #~(begin - (use-modules (rnrs exceptions) - (guix build utils)) - - (chdir #$source) - (guard (condition ((invoke-error? condition) - (format (current-error-port) - "`~a~{ ~a~}' failed with exit status ~a~%" - (invoke-error-program condition) - (invoke-error-arguments condition) - (invoke-error-exit-status condition)) - (exit #f))) - (apply invoke '#$command)) - (mkdir-p #$output))))) -- cgit v1.2.3