diff options
author | Christopher Baines <mail@cbaines.net> | 2024-02-22 10:50:00 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2024-02-22 10:50:00 +0000 |
commit | f6cf019f5d3e5fcee1f74e73d44a1ff1d25478ba (patch) | |
tree | 7abd6a21d11d4c0fcfbeeee5cfcd3330332bda0b | |
parent | ee1ceaee8eab9c1ac3a98039fa159fdd960e8443 (diff) | |
download | qa-frontpage-f6cf019f5d3e5fcee1f74e73d44a1ff1d25478ba.tar qa-frontpage-f6cf019f5d3e5fcee1f74e73d44a1ff1d25478ba.tar.gz |
Account for builds to keep when canceling branch builds
-rw-r--r-- | guix-qa-frontpage/manage-builds.scm | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/guix-qa-frontpage/manage-builds.scm b/guix-qa-frontpage/manage-builds.scm index 495fb13..8f83ffe 100644 --- a/guix-qa-frontpage/manage-builds.scm +++ b/guix-qa-frontpage/manage-builds.scm @@ -571,22 +571,28 @@ (with-fibers-port-timeouts (lambda () (let loop ((uuids-batch (fetch-build-uuids))) - (for-each - (lambda (uuid) - (unless (set-contains? build-ids-to-keep-set uuid) + (let ((builds-to-cancel + (remove! + (lambda (uuid) + (set-contains? build-ids-to-keep-set uuid)) + uuids-batch))) + + (for-each + (lambda (uuid) (retry-on-error (lambda () + ;; TODO Ignore error" . "build-already-processed (send-cancel-build-request build-coordinator uuid #:skip-updating-derived-priorities? #t)) #:times 6 #:delay 15) (simple-format (current-error-port) - "canceled ~A\n" uuid))) - uuids-batch) + "canceled ~A\n" uuid)) + builds-to-cancel) - (unless (null? uuids-batch) - (loop (fetch-build-uuids))))) + (unless (null? builds-to-cancel) + (loop (fetch-build-uuids)))))) #:timeout 60) (simple-format (current-error-port) "finished canceling builds for ~A ~A and not revision ~A\n" |