diff options
author | Christopher Baines <mail@cbaines.net> | 2020-05-20 07:12:35 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2020-05-20 07:12:35 +0100 |
commit | a4a16346889a538317280d0cb80beefb441bc854 (patch) | |
tree | b612ae5be7aff6f747f1aacdb6def9848ee8c1d4 /scripts | |
parent | f9c8753d88e8a9100cc5d555bd0e0998b7c5845f (diff) | |
download | build-coordinator-a4a16346889a538317280d0cb80beefb441bc854.tar build-coordinator-a4a16346889a538317280d0cb80beefb441bc854.tar.gz |
Send requests directly to the coordinator for submitting builds
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/guix-build-coordinator-queue-builds-from-guix-data-service.in | 41 |
1 files changed, 20 insertions, 21 deletions
diff --git a/scripts/guix-build-coordinator-queue-builds-from-guix-data-service.in b/scripts/guix-build-coordinator-queue-builds-from-guix-data-service.in index 9cf0da2..a6665a3 100644 --- a/scripts/guix-build-coordinator-queue-builds-from-guix-data-service.in +++ b/scripts/guix-build-coordinator-queue-builds-from-guix-data-service.in @@ -29,7 +29,8 @@ (rnrs bytevectors) (json) (web uri) - (web client)) + (web client) + (guix-build-coordinator client-communication)) (define %guix-data-service-host "data.guix.gnu.org") @@ -125,26 +126,24 @@ derivations)) (define* (submit-build derivation #:key (priority 0)) - (let ((exit-code - (system* "guix-build-coordinator" "build" - (string-append - "--derivation-substitute-urls=" - "https://" %guix-data-service-host) - ;; For the use case of providing substitutes, just build each - ;; output once. - "--ignore-if-build-for-derivation-exists" - "--ignore-if-build-for-outputs-exists" - ;; The Guix Build Coordinator will automatically add builds - ;; for inputs if the required output isn't available, but to - ;; ensure this derivation, and all the related derivations - ;; have been built and the outputs stored, instruct the Guix - ;; Build Coordinator to add builds for related derivations - ;; if no build exists. - "--ensure-all-related-derivation-outputs-have-builds" - (simple-format #f "--priority=~A" priority) - derivation))) - (unless (zero? exit-code) - (error "build command failed")))) + (let ((response + (send-submit-build-request + "http://127.0.0.1:8746" + derivation + (list + (string-append "https://" %guix-data-service-host)) + #f + priority + #t + #t + #t))) + (let ((no-build-submitted-response + (assoc-ref response "no-build-submitted"))) + (if no-build-submitted-response + (simple-format #t "skipped: ~A\n" + no-build-submitted-response) + (simple-format #t "build submitted as ~A\n" + (assoc-ref response "build-submitted")))))) (define (submit-builds-for-revision commit) (simple-format #t "looking at revision ~A\n" commit) |