aboutsummaryrefslogtreecommitdiff
path: root/guix-qa-frontpage/server.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix-qa-frontpage/server.scm')
-rw-r--r--guix-qa-frontpage/server.scm27
1 files changed, 22 insertions, 5 deletions
diff --git a/guix-qa-frontpage/server.scm b/guix-qa-frontpage/server.scm
index c46f3ef..b175b0e 100644
--- a/guix-qa-frontpage/server.scm
+++ b/guix-qa-frontpage/server.scm
@@ -92,6 +92,12 @@
(static-asset-from-store-renderer assets-directory)
(static-asset-from-directory-renderer assets-directory)))
+ (define handle-doc-assets
+ (if (string-prefix? (%store-prefix)
+ doc-dir)
+ (static-asset-from-store-renderer doc-dir)
+ (static-asset-from-directory-renderer doc-dir)))
+
(define gc-metrics-updater!
(get-gc-metrics-updater metrics-registry))
@@ -774,6 +780,14 @@ has no patches or has been closed.")
"README not found"
"The README.html file does not exist")
#:code 404))))
+ (('GET (and "qa-information-flow.png" filename))
+ (or (handle-doc-assets filename
+ (request-headers request))
+ (list (build-response #:code 404)
+ (string-append
+ "Resource not found: "
+ (uri->string
+ (request-uri request))))))
((method path ...)
(render-html
#:sxml (general-not-found
@@ -791,11 +805,14 @@ has no patches or has been closed.")
(lambda ()
(let-values (((request-components mime-types)
(request->path-components-and-mime-type request)))
- (controller request
- (cons (request-method request)
- request-components)
- mime-types
- body)))
+ (call-with-delay-logging
+ controller
+ #:threshold 30
+ #:args (list request
+ (cons (request-method request)
+ request-components)
+ mime-types
+ body))))
#:on-error 'backtrace
#:post-error (lambda args
(render-html #:sxml (error-page args)