guix-data-service/guix-data-service/model/build-status.scm

41 lines
1.2 KiB
Scheme
Raw Normal View History

(define-module (guix-data-service model build-status)
#:use-module (squee)
#:export (build-statuses
build-status-strings
insert-build-status))
(define build-statuses
'((-2 . "scheduled")
(-1 . "started")
(0 . "succeeded")
(1 . "failed")
(2 . "failed-dependency")
(3 . "failed-other")
(4 . "canceled")))
(define build-status-strings
(map cdr build-statuses))
(define (insert-build-status conn internal-build-id
starttime stoptime status)
(exec-query conn
(string-append
"INSERT INTO build_status "
"(internal_build_id, starttime, stoptime, status) "
"VALUES "
"(" internal-build-id ", "
(if (eq? starttime 0)
"NULL"
(string-append "to_timestamp("
(number->string starttime)
")"))
", "
(if (eq? stoptime 0)
"NULL"
(string-append "to_timestamp("
(number->string stoptime)
")"))
", "
"'" status "'"
")")))