summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/forge.skb5
-rw-r--r--guix/forge/forge.scm5
-rw-r--r--guix/forge/laminar.scm5
3 files changed, 12 insertions, 3 deletions
diff --git a/doc/forge.skb b/doc/forge.skb
index 37e570c..678d4de 100644
--- a/doc/forge.skb
+++ b/doc/forge.skb
@@ -235,7 +235,10 @@ unused unused, and may be deprecated in the future.]))
(record-field "run"
[G-expression to be run])
(record-field "after"
- [G-expression to be run after the main job script]))
+ [G-expression to be run after the main job script])
+ (record-field "trigger?"
+ [If ,(code [#t]), this job is run on every commit. Else, it
+must be manually set up to run some other way.]))
(record-documentation "guix/forge/webhook.scm" '<webhook-configuration>
(record-field "package"
[,(code [webhook]) package to use])
diff --git a/guix/forge/forge.scm b/guix/forge/forge.scm
index 2c55b44..f99576f 100644
--- a/guix/forge/forge.scm
+++ b/guix/forge/forge.scm
@@ -97,7 +97,10 @@
(setenv "LAMINAR_REASON" #$reason))
(apply invoke
#$(file-append laminar "/bin/laminarc")
- "queue" '#$(map forge-laminar-job-name ci-jobs)))))
+ "queue" '#$(filter-map (lambda (job)
+ (and (forge-laminar-job-trigger? job)
+ (forge-laminar-job-name job)))
+ ci-jobs)))))
(define (forge-activation config)
(let ((projects
diff --git a/guix/forge/laminar.scm b/guix/forge/laminar.scm
index 22c9f9a..61d1d20 100644
--- a/guix/forge/laminar.scm
+++ b/guix/forge/laminar.scm
@@ -34,6 +34,7 @@
forge-laminar-job-name
forge-laminar-job-run
forge-laminar-job-after
+ forge-laminar-job-trigger?
forge-laminar-group
forge-laminar-group?
forge-laminar-group-name
@@ -56,7 +57,9 @@
(name forge-laminar-job-name)
(run forge-laminar-job-run (thunked))
(after forge-laminar-job-after
- (default #f)))
+ (default #f))
+ (trigger? forge-laminar-job-trigger?
+ (default #t)))
(define-record-type* <forge-laminar-group>
forge-laminar-group make-forge-laminar-group