aboutsummaryrefslogtreecommitdiff
path: root/guix-build-coordinator/guix-data-service.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-build-coordinator/guix-data-service.scm')
-rw-r--r--guix-build-coordinator/guix-data-service.scm15
1 files changed, 10 insertions, 5 deletions
diff --git a/guix-build-coordinator/guix-data-service.scm b/guix-build-coordinator/guix-data-service.scm
index e67949c..c662c66 100644
--- a/guix-build-coordinator/guix-data-service.scm
+++ b/guix-build-coordinator/guix-data-service.scm
@@ -25,6 +25,7 @@
#:use-module (json)
#:use-module (web client)
#:use-module (web response)
+ #:use-module (guix-build-coordinator utils)
#:use-module (guix-build-coordinator datastore)
#:export (send-build-event-to-guix-data-service
@@ -41,11 +42,15 @@
(let*-values
(((response body)
- (http-post target-url
- #:body body
- ;; Guile doesn't treat JSON as text, so decode the
- ;; body manually
- #:decode-body? #f))
+ (with-timeout 30000 ; 30 seconds
+ (raise-exception
+ (make-exception-with-message
+ "timeout making guix-data-service request"))
+ (http-post target-url
+ #:body body
+ ;; Guile doesn't treat JSON as text, so decode the
+ ;; body manually
+ #:decode-body? #f)))
((code)
(response-code response)))
(unless (and (>= code 200)