Add a build servers page

This commit is contained in:
Christopher Baines 2020-02-01 13:12:01 +01:00
parent e5e9442b44
commit 6bc753dd0e
3 changed files with 38 additions and 0 deletions

View file

@ -78,6 +78,12 @@
"No build found for this build server and derivation.") "No build found for this build server and derivation.")
#:code 404))))) #:code 404)))))
(define (render-build-servers mime-types
build-servers)
(render-html
#:sxml
(view-build-servers build-servers)))
(define (render-build-server mime-types (define (render-build-server mime-types
build-server) build-server)
(render-html (render-html
@ -191,6 +197,10 @@
conn conn
secret-key-base) secret-key-base)
(match method-and-path-components (match method-and-path-components
(('GET "build-servers")
(let ((build-servers (select-build-servers conn)))
(render-build-servers mime-types
build-servers)))
(('GET "build-server" build-server-id) (('GET "build-server" build-server-id)
(let ((build-server (select-build-server conn (string->number (let ((build-server (select-build-server conn (string->number
build-server-id)))) build-server-id))))

View file

@ -20,6 +20,7 @@
#:use-module (guix-data-service web view html) #:use-module (guix-data-service web view html)
#:use-module (guix-data-service web html-utils) #:use-module (guix-data-service web html-utils)
#:export (view-build #:export (view-build
view-build-servers
view-build-server view-build-server
view-signing-key)) view-signing-key))
@ -89,6 +90,31 @@
required-failed-builds)))))) required-failed-builds))))))
'()))))) '())))))
(define (view-build-servers build-servers)
(layout
#:body
`(,(header)
(div
(@ (class "container"))
(div
(@ (class "row"))
(div
(@ (class "col-sm-12"))
(h2 "Build servers")
,@(map
(match-lambda
((id url lookup-all-derivations?)
`(dl
(@ (class "dl-horizontal"))
(dt "URL")
(dd (a (@ (href ,url))
,url))
(dt "Lookup all " (br) "derivations?")
(dd ,(if lookup-all-derivations?
"Yes"
"No")))))
build-servers)))))))
(define (view-build-server build-server) (define (view-build-server build-server)
(layout (layout
#:body #:body

View file

@ -315,6 +315,8 @@
(not-found (request-uri request)))) (not-found (request-uri request))))
(('GET "gnu" "store" filename "narinfos") (('GET "gnu" "store" filename "narinfos")
(render-narinfos conn filename)) (render-narinfos conn filename))
(('GET "build-servers")
(delegate-to-with-secret-key-base build-server-controller))
(((or 'GET 'POST) "build-server" _ ...) (((or 'GET 'POST) "build-server" _ ...)
(delegate-to-with-secret-key-base build-server-controller)) (delegate-to-with-secret-key-base build-server-controller))
(('GET "compare" _ ...) (delegate-to compare-controller)) (('GET "compare" _ ...) (delegate-to compare-controller))