aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/client-communication.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-build-coordinator/client-communication.scm')
-rw-r--r--guix-build-coordinator/client-communication.scm20
1 files changed, 20 insertions, 0 deletions
diff --git a/guix-build-coordinator/client-communication.scm b/guix-build-coordinator/client-communication.scm
index 094ab4e..5a66cdd 100644
--- a/guix-build-coordinator/client-communication.scm
+++ b/guix-build-coordinator/client-communication.scm
@@ -55,6 +55,7 @@
request-agent-build-allocation-plan
request-agents-list
request-failed-builds-with-blocking-count-list
+ request-setup-failures
send-create-agent-request
send-agent-set-active-request
send-create-agent-password-request
@@ -334,6 +335,16 @@
(render-json
`((error . 404))
#:code 404))))
+ (('GET "setup-failures")
+ (let ((query-parameters (request-query-parameters request)))
+ (render-json
+ `((setup_failures
+ . ,(hash-map->list
+ (lambda (k v)
+ (cons k (list->vector v)))
+ (datastore-fetch-setup-failures
+ datastore
+ #:agent-id (assq-ref query-parameters 'agent-id))))))))
(('GET "builds")
(let* ((query-parameters (request-query-parameters request))
(fold-builds-args
@@ -944,6 +955,15 @@
"false"))
""))))
+(define* (request-setup-failures coordinator-uri #:key agent-id)
+ (send-request coordinator-uri
+ 'GET
+ (string-append
+ "/setup-failures"
+ (if agent-id
+ (simple-format #f "?agent-id=~A" agent-id)
+ ""))))
+
(define* (send-create-agent-request coordinator-uri
#:key
requested-uuid