diff options
Diffstat (limited to 'guix-build-coordinator/agent-messaging/http.scm')
-rw-r--r-- | guix-build-coordinator/agent-messaging/http.scm | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/guix-build-coordinator/agent-messaging/http.scm b/guix-build-coordinator/agent-messaging/http.scm index d22cf5c..7e1b540 100644 --- a/guix-build-coordinator/agent-messaging/http.scm +++ b/guix-build-coordinator/agent-messaging/http.scm @@ -259,7 +259,9 @@ port. Also, the port used can be changed by passing the --port option.\n" #:code 403))) (('POST "agent" uuid "fetch-builds") (if (authenticated? uuid request) - (let ((builds (fetch-builds build-coordinator uuid))) + (let* ((json-body (json-string->scm (utf8->string body))) + (count (assoc-ref json-body "count")) + (builds (fetch-builds build-coordinator uuid count))) (render-json `((builds . ,(list->vector builds))))) (render-json @@ -623,10 +625,12 @@ port. Also, the port used can be changed by passing the --port option.\n" #:body report #:succeed-on-access-denied-retry? #t)) -(define (fetch-builds-for-agent coordinator-uri agent-uuid password) +(define* (fetch-builds-for-agent coordinator-uri agent-uuid password + #:key (count 1)) (vector->list (assoc-ref (coordinator-http-request coordinator-uri agent-uuid password (string-append "/agent/" agent-uuid "/fetch-builds") + #:body `((count . ,count)) #:method 'POST) "builds"))) |