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.scm26
1 files changed, 18 insertions, 8 deletions
diff --git a/guix-qa-frontpage/server.scm b/guix-qa-frontpage/server.scm
index 8ec745f..fa89251 100644
--- a/guix-qa-frontpage/server.scm
+++ b/guix-qa-frontpage/server.scm
@@ -163,14 +163,24 @@
(let ((branches
(with-sqlite-cache
database
- 'branches
- (lambda ()
- (list-branches
- (list-branches-url %data-service-guix-repository-id)))
- #:ttl 60)))
- (render-html
- #:sxml
- (branches-view branches))))
+ 'list-non-master-branches
+ list-non-master-branches
+ #:ttl 300)))
+ (case (most-appropriate-mime-type
+ '(application/json text/html)
+ mime-types)
+ ((application/json)
+ (render-json
+ `((branches . ,(list->vector
+ (map (match-lambda
+ ((name . details)
+ `((name . ,name)
+ ,@details)))
+ branches))))))
+ (else
+ (render-html
+ #:sxml
+ (branches-view branches))))))
(('GET "branch" "master")
(let ((substitute-availability
systems-with-low-substitute-availability