diff options
author | Christopher Baines <mail@cbaines.net> | 2020-11-01 22:52:53 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2020-11-01 22:52:53 +0000 |
commit | 375a6a37dca07cab81749805e5e4a07d3ac72cc4 (patch) | |
tree | ecbeb53a31b9af05090c3644a1fe49b9523d44f0 | |
parent | f485423d5aabfbfb48ccf258d6e6ea6f0404db10 (diff) | |
download | data-service-375a6a37dca07cab81749805e5e4a07d3ac72cc4.tar data-service-375a6a37dca07cab81749805e5e4a07d3ac72cc4.tar.gz |
Support not querying pending builds
As this can take some time.
-rw-r--r-- | guix-data-service/builds.scm | 14 | ||||
-rw-r--r-- | scripts/guix-data-service-query-build-servers.in | 7 |
2 files changed, 15 insertions, 6 deletions
diff --git a/guix-data-service/builds.scm b/guix-data-service/builds.scm index 38c853a..fdae811 100644 --- a/guix-data-service/builds.scm +++ b/guix-data-service/builds.scm @@ -144,7 +144,8 @@ WHERE status IN ('started', 'scheduled') (define* (query-build-servers conn build-server-ids systems revision-commits outputs - #:key verbose?) + #:key verbose? + (query-pending-builds? #t)) (cleanup-bad-build-data conn) (parameterize ((verbose-output? verbose?)) @@ -170,7 +171,8 @@ WHERE status IN ('started', 'scheduled') url systems revision-commits - outputs)))) + outputs + query-pending-builds?)))) (lambda (key . args) (simple-format (current-error-port) @@ -178,7 +180,8 @@ WHERE status IN ('started', 'scheduled') key args))))))) build-servers))))) -(define (query-build-server conn id url systems revision-commits outputs) +(define (query-build-server conn id url systems revision-commits outputs + query-pending-builds?) (define (fetch-derivation-output-details-set-id output) (match (exec-query conn @@ -197,8 +200,9 @@ WHERE derivation_output_details.path = $1" (string->number id)) (() #f))) - (simple-format #t "\nFetching pending builds\n") - (process-pending-builds conn id systems revision-commits url) + (when query-pending-builds? + (simple-format #t "\nFetching pending builds\n") + (process-pending-builds conn id systems revision-commits url)) (simple-format #t "\nFetching unseen derivations\n") (process-derivation-outputs conn id url diff --git a/scripts/guix-data-service-query-build-servers.in b/scripts/guix-data-service-query-build-servers.in index ba92a9e..b386ee1 100644 --- a/scripts/guix-data-service-query-build-servers.in +++ b/scripts/guix-data-service-query-build-servers.in @@ -44,6 +44,9 @@ (or (assoc-ref result 'systems) '())) (alist-delete 'systems result)))) + (option '("dont-query-pending-builds") #f #f + (lambda (opt name _ result) + (alist-cons 'dont-query-pending-builds #t result))) (option '("verbose") #f #f (lambda (opt name _ result) (alist-cons 'verbose #t result))))) @@ -78,4 +81,6 @@ (assq-ref opts 'systems) (assq-ref opts 'revision-commits) (assq-ref opts 'outputs) - #:verbose? (assq-ref opts 'verbose))))) + #:verbose? (assq-ref opts 'verbose) + #:query-pending-builds? + (not (assq-ref opts 'dont-query-pending-builds)))))) |