Add options to the query-build-servers script

So you can select to query specific build servers.
This commit is contained in:
Christopher Baines 2019-12-10 08:28:38 +00:00
parent f13077d087
commit c90f411e5e
2 changed files with 42 additions and 8 deletions

View file

@ -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)))))