Improve the parse-commit invalid parameter handling
This commit is contained in:
parent
cb871530cf
commit
de3ca9d074
1 changed files with 27 additions and 7 deletions
|
|
@ -53,13 +53,33 @@
|
||||||
s)
|
s)
|
||||||
|
|
||||||
(define (parse-commit s)
|
(define (parse-commit s)
|
||||||
(if (parallel-via-thread-pool-channel
|
(parallel-via-thread-pool-channel
|
||||||
(with-thread-postgresql-connection
|
(with-thread-postgresql-connection
|
||||||
(lambda (conn)
|
(lambda (conn)
|
||||||
(guix-commit-exists? conn s))))
|
(if (guix-commit-exists? conn s)
|
||||||
s
|
s
|
||||||
|
(let* ((job-details
|
||||||
|
(select-job-for-commit conn s))
|
||||||
|
(job-state
|
||||||
|
(assq-ref job-details 'state)))
|
||||||
|
(if job-details
|
||||||
(make-invalid-query-parameter
|
(make-invalid-query-parameter
|
||||||
s "unknown commit")))
|
s
|
||||||
|
(cond
|
||||||
|
((string=? job-state "queued")
|
||||||
|
`("data unavailable, "
|
||||||
|
(a (@ (href ,(string-append
|
||||||
|
"/revision/" s)))
|
||||||
|
"yet to process revision")))
|
||||||
|
((string=? job-state "failed")
|
||||||
|
`("data unavailable, "
|
||||||
|
(a (@ (href ,(string-append
|
||||||
|
"/revision/" s)))
|
||||||
|
"failed to process revision")))
|
||||||
|
(else
|
||||||
|
"unknown job state")))
|
||||||
|
(make-invalid-query-parameter
|
||||||
|
s "unknown commit"))))))))
|
||||||
|
|
||||||
(define (parse-derivation file-name)
|
(define (parse-derivation file-name)
|
||||||
(if (parallel-via-thread-pool-channel
|
(if (parallel-via-thread-pool-channel
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue