Add options to the query-build-servers script
So you can select to query specific build servers.
This commit is contained in:
parent
f13077d087
commit
c90f411e5e
2 changed files with 42 additions and 8 deletions
|
|
@ -26,7 +26,39 @@
|
|||
(guix-data-service database)
|
||||
(guix-data-service builds))
|
||||
|
||||
(with-postgresql-connection
|
||||
"query-build-servers"
|
||||
(lambda (conn)
|
||||
(query-build-servers conn (cdr (command-line)))))
|
||||
(define %options
|
||||
;; Specifications of the command-line options
|
||||
(list (option '("build-server-id") #t #f
|
||||
(lambda (opt name arg result)
|
||||
(alist-cons
|
||||
'build-server-ids
|
||||
(cons (string->number arg)
|
||||
(or (assoc-ref result 'build-server-ids)
|
||||
'()))
|
||||
(alist-delete 'build-server-ids result))))))
|
||||
|
||||
(define %default-options
|
||||
;; Alist of default option values
|
||||
'())
|
||||
|
||||
(define (parse-options args)
|
||||
(args-fold
|
||||
args %options
|
||||
(lambda (opt name arg result)
|
||||
(error "unrecognized option" name))
|
||||
(lambda (arg result)
|
||||
(alist-cons
|
||||
'revision-commits
|
||||
(cons arg
|
||||
(or (assoc-ref result 'revision-commits)
|
||||
'()))
|
||||
(alist-delete 'revision-commits result)))
|
||||
%default-options))
|
||||
|
||||
(let ((opts (parse-options (cdr (program-arguments)))))
|
||||
(with-postgresql-connection
|
||||
"query-build-servers"
|
||||
(lambda (conn)
|
||||
(query-build-servers conn
|
||||
(assq-ref opts 'build-server-ids)
|
||||
(assq-ref opts 'revision-commits)))))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue