summary refs log tree commit diff
path: root/gnu/ci.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-03-05 23:36:01 +0100
committerLudovic Courtès <ludo@gnu.org>2020-03-05 23:40:24 +0100
commitbc8b2ffdac3f55414629ace5b1a0db32e9656c0a (patch)
treedf9491836b77e0ae7a5d45e6e1ee108ba5935ef6 /gnu/ci.scm
parent530e31b82448ba00dbbe6abc078204d340c09cb1 (diff)
downloadguix-bc8b2ffdac3f55414629ace5b1a0db32e9656c0a.tar.gz
ci: Adjust 'channel-build-system' for when the source is a file name.
Fixes an evaluation error introduced in
dd1ee160be8ba4e211432c08e161c24901cd670e: when invoked via
'build-aux/cuirass/gnu-system.scm', SOURCE is a store file name, not a
<local-file> as it is when invoked via 'etc/system-tests.scm'.

* gnu/ci.scm (channel-build-system)[build]: Call 'lower-object' only
when SOURCE is not a string.
Diffstat (limited to 'gnu/ci.scm')
-rw-r--r--gnu/ci.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/gnu/ci.scm b/gnu/ci.scm
index 9dc530b01e..e024c09ebc 100644
--- a/gnu/ci.scm
+++ b/gnu/ci.scm
@@ -243,7 +243,11 @@ system.")
                                 #:key source commit system
                                 #:allow-other-keys)
                   (run-with-store store
-                    (mlet* %store-monad ((source (lower-object source))
+                    ;; SOURCE can be a lowerable object such as <local-file>
+                    ;; or a file name.  Adjust accordingly.
+                    (mlet* %store-monad ((source (if (string? source)
+                                                     (return source)
+                                                     (lower-object source)))
                                          (instance
                                           -> (checkout->channel-instance
                                               source #:commit commit)))