This is an automated email from the git hooks/post-receive script.

civodul pushed a commit to branch main
in repository guix-cuirass.

The following commit(s) were added to refs/heads/main by this push:
     new f61c8b1  forges: Log when no token is found.
f61c8b1 is described below

commit f61c8b1687784792a7c25d3947c60513f83c80d9
Author: Romain GARBAGE <[email protected]>
AuthorDate: Fri Mar 21 13:12:11 2025 +0100

    forges: Log when no token is found.
    
    * src/cuirass/forges.scm (forge-get-token): Log when no token is found.
    
    Signed-off-by: Ludovic Courtès <[email protected]>
---
 src/cuirass/forges.scm | 52 +++++++++++++++++++++++++++-----------------------
 1 file changed, 28 insertions(+), 24 deletions(-)

diff --git a/src/cuirass/forges.scm b/src/cuirass/forges.scm
index 3f6a818..2404543 100644
--- a/src/cuirass/forges.scm
+++ b/src/cuirass/forges.scm
@@ -69,30 +69,34 @@
 both strings. As an exemple, a token for a Git repository located at
 \"https://codeberg.org/owner/repo\"; could be retrieved by setting HOST-NAME to
 \"codeberg.org\" and NAMESPACE to \"owner/repo\"."
-  (let ((file-name (string-append (%forge-token-directory)
-                                  "/"
-                                  host-name)))
-    (call-with-input-file file-name
-      (lambda (port)
-        (let loop ()
-          (match (read-line port)
-            ((? eof-object?) #f)
-            (str
-             (let ((str (string-trim-both str)))
-               (if (or (string-null? str)
-                       (string-prefix? "#" str))
-                   (loop)
-                   (match (string-tokenize str)
-                     (`(,ns ,token)
-                      (if (string=? ns namespace)
-                          token
-                          (loop)))
-                     (_
-                      (log-warning "Malformed line ~a in file ~a.~%"
-                                   (port-line port)
-                                   file-name)
-                      (loop)))))))))
-      #:encoding "utf-8")))
+  (let* ((file-name (string-append (%forge-token-directory)
+                                   "/"
+                                   host-name))
+         (token (call-with-input-file file-name
+                  (lambda (port)
+                    (let loop ()
+                      (match (read-line port)
+                        ((? eof-object?) #f)
+                        (str
+                         (let ((str (string-trim-both str)))
+                           (if (or (string-null? str)
+                                   (string-prefix? "#" str))
+                               (loop)
+                               (match (string-tokenize str)
+                                 (`(,ns ,token)
+                                  (if (string=? ns namespace)
+                                      token
+                                      (loop)))
+                                 (_
+                                  (log-warning "Malformed line ~a in file 
~a.~%"
+                                               (port-line port)
+                                               file-name)
+                                  (loop)))))))))
+                  #:encoding "utf-8")))
+    (unless token
+      (log-error "no token found for ~a/~a"
+                 host-name namespace))
+    token))
 
 ;; This mapping defines a specific JSON dictionary used for tweaking Cuirass
 ;; options. It is not included in the JSON data sent by default by Gitlab and

Reply via email to