about summary refs log tree commit diff
path: root/guix
diff options
context:
space:
mode:
Diffstat (limited to 'guix')
-rw-r--r--guix/forge/forge.scm40
1 files changed, 22 insertions, 18 deletions
diff --git a/guix/forge/forge.scm b/guix/forge/forge.scm
index 9570ba6..bad6b8b 100644
--- a/guix/forge/forge.scm
+++ b/guix/forge/forge.scm
@@ -560,27 +560,31 @@ forge configuration @var{config}."
                               projects))))
           (list))))
 
+(define (forge-project-all-ci-jobs project config)
+  "Return list of all CI jobs for @var{project} in forge configuration
+@var{config}."
+  ;; Add project context to CI jobs.
+  (map (lambda (job)
+         (forge-laminar-job
+          (inherit job)
+          (contexts (cons (forge-project-name project)
+                          (forge-laminar-job-contexts job)))))
+       ;; Prepend website CI job to the other CI jobs.
+       (if (forge-project-website-ci-job project)
+           (cons (forge-laminar-job
+                  (inherit (forge-project-website-ci-job project))
+                  (run (switch-symlinks-gexp
+                        (string-append (forge-configuration-websites-directory config)
+                                       "/"
+                                       (forge-project-name project))
+                        (forge-laminar-job-run (forge-project-website-ci-job project)))))
+                 (forge-project-ci-jobs project))
+           (forge-project-ci-jobs project))))
+
 (define (forge-ci-jobs config)
   "Return list of CI jobs for forge configuration @var{config}. Each
 value of the returned list is a @code{<forge-laminar-job>} object."
-  (append-map (lambda (project)
-                ;; Add project context to CI jobs.
-                (map (lambda (job)
-                       (forge-laminar-job
-                        (inherit job)
-                        (contexts (cons (forge-project-name project)
-                                        (forge-laminar-job-contexts job)))))
-                     ;; Prepend website CI job to the other CI jobs.
-                     (if (forge-project-website-ci-job project)
-                         (cons (forge-laminar-job
-                                (inherit (forge-project-website-ci-job project))
-                                (run (switch-symlinks-gexp
-                                      (string-append (forge-configuration-websites-directory config)
-                                                     "/"
-                                                     (forge-project-name project))
-                                      (forge-laminar-job-run (forge-project-website-ci-job project)))))
-                               (forge-project-ci-jobs project))
-                         (forge-project-ci-jobs project))))
+  (append-map (cut forge-project-all-ci-jobs <> config)
               (forge-configuration-projects config)))
 
 (define (forge-ci-job-contexts config)