Add a lookup_builds field to the build_servers table

This is to allow for build servers where only the substitutes should be
queried, and it shouldn't be assumed that they're running Cuirass.
This commit is contained in:
Christopher Baines 2020-05-24 17:02:53 +01:00
parent f11421824d
commit b6754c8a4c
12 changed files with 55 additions and 39 deletions

View file

@ -19,21 +19,23 @@
#:use-module (ice-9 match)
#:use-module (squee)
#:export (select-build-servers
select-build-server))
select-build-server
select-build-server-urls-by-id))
(define (select-build-servers conn)
(define query
"
SELECT id, url, lookup_all_derivations
SELECT id, url, lookup_all_derivations, lookup_builds
FROM build_servers
ORDER BY id")
(map
(match-lambda
((id url lookup-all-derivations)
((id url lookup-all-derivations lookup-builds)
(list (string->number id)
url
(string=? lookup-all-derivations "t"))))
(string=? lookup-all-derivations "t")
(string=? lookup-builds))))
(exec-query conn query)))
(define (select-build-server conn id)
@ -46,6 +48,13 @@ WHERE id = $1")
(match (exec-query conn query (list (number->string id)))
(()
#f)
(((url lookup_all_derivations))
(((url lookup_all_derivations lookup_builds))
(list url
(string=? lookup_all_derivations "t")))))
(string=? lookup_all_derivations "t")
(string=? lookup_builds "t")))))
(define (select-build-server-urls-by-id conn)
(map (match-lambda
((id url lookup-all-derivations? lookup-builds?)
(cons id url)))
(select-build-servers conn)))