aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/client-communication.scm
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2023-02-21 12:42:12 +0000
committerChristopher Baines <mail@cbaines.net>2023-02-21 12:42:12 +0000
commitc29a46e8d298d3a1f16b2d4f75fa96759741afb8 (patch)
tree66cefadad19bb8366fb7593fc302f858c72ffbb3 /guix-build-coordinator/client-communication.scm
parent8ea7588eeab9b264645939a312bf0051be10acef (diff)
downloadbuild-coordinator-c29a46e8d298d3a1f16b2d4f75fa96759741afb8.tar
build-coordinator-c29a46e8d298d3a1f16b2d4f75fa96759741afb8.tar.gz
Support skipping updating derived priorities when cancelling builds
Since this is quite expensive and can be unnecessary when you're cancelling a specific batch of builds where you know the prioritisation won't affect the remaining builds.
Diffstat (limited to 'guix-build-coordinator/client-communication.scm')
-rw-r--r--guix-build-coordinator/client-communication.scm21
1 files changed, 17 insertions, 4 deletions
diff --git a/guix-build-coordinator/client-communication.scm b/guix-build-coordinator/client-communication.scm
index 39b0c23..d9f2c88 100644
--- a/guix-build-coordinator/client-communication.scm
+++ b/guix-build-coordinator/client-communication.scm
@@ -178,8 +178,16 @@
.
,(cancel-build build-coordinator uuid
#:ignore-if-build-required-by-another?
- (string=? (assq-ref query-parameters
- 'ignore-if-build-required-by-another)
+ (string=? (or (assq-ref
+ query-parameters
+ 'ignore-if-build-required-by-another)
+ "")
+ "true")
+ #:skip-updating-derived-priorities?
+ (string=? (or
+ (assq-ref query-parameters
+ 'skip-updating-derived-priorities)
+ "")
"true")))))))
(('POST "build" uuid "update-priority")
(update-build-priority
@@ -595,14 +603,19 @@
(define* (send-cancel-build-request
coordinator-uri
build-id
- #:key (ignore-if-build-required-by-another? #t))
+ #:key
+ (ignore-if-build-required-by-another? #t)
+ skip-updating-derived-priorities?)
(send-request coordinator-uri
'POST
(string-append "/build/" build-id "/cancel"
"?ignore-if-build-required-by-another="
(if ignore-if-build-required-by-another?
"true"
- "false"))))
+ "false")
+ (if skip-updating-derived-priorities?
+ "&skip-updating-derived-priorities=true"
+ ""))))
(define (send-update-build-priority-request
coordinator-uri