aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2022-08-21 17:21:28 +0100
committerChristopher Baines <mail@cbaines.net>2022-09-03 09:30:58 +0100
commit731e13d2a4dbef6b9bafc22a7bd29a77b38a6455 (patch)
tree0d4c6e69614b6a7266cc18ae6a321d8dc6deebee /scripts
parent42efa5c932d168aeb724727b8a564d8e89263094 (diff)
downloadqa-frontpage-731e13d2a4dbef6b9bafc22a7bd29a77b38a6455.tar
qa-frontpage-731e13d2a4dbef6b9bafc22a7bd29a77b38a6455.tar.gz
Add lots more functionality
Diffstat (limited to 'scripts')
-rw-r--r--scripts/guix-qa-frontpage.in39
1 files changed, 33 insertions, 6 deletions
diff --git a/scripts/guix-qa-frontpage.in b/scripts/guix-qa-frontpage.in
index b692e5a..904875c 100644
--- a/scripts/guix-qa-frontpage.in
+++ b/scripts/guix-qa-frontpage.in
@@ -31,6 +31,9 @@
(system repl repl)
(gcrypt pk-crypto)
(guix pki)
+ (prometheus)
+ (guix-qa-frontpage database)
+ (guix-qa-frontpage manage-builds)
(guix-qa-frontpage server))
(define %options
@@ -52,7 +55,15 @@
(lambda (opt name arg result)
(alist-cons 'host
arg
- (alist-delete 'host result))))))
+ (alist-delete 'host result))))
+ (option '("database") #t #f
+ (lambda (opt name arg result)
+ (alist-cons 'database
+ arg
+ result)))
+ (option '("submit-builds-for-patches") #f #f
+ (lambda (opt name _ result)
+ (alist-cons 'submit-builds-for-patches #t result)))))
(define %default-options
;; Alist of default option values
@@ -65,7 +76,10 @@
(string-append (getcwd) "/assets")))
(if (file-exists? install-dir)
install-dir
- dev-dir)))))
+ dev-dir)))
+ (database . ,(string-append (getcwd)
+ "/guix_qa_frontpage.db"))
+ (submit-builds-for-patches . #f)))
(define (parse-options args)
(args-fold
@@ -100,7 +114,20 @@
(assq-ref opts 'host)
(assq-ref opts 'port))
- (start-guix-qa-frontpage-web-server
- (assq-ref opts 'port)
- (assq-ref opts 'host)
- (assq-ref opts 'assets-directory)))
+ (let* ((metrics-registry (make-metrics-registry
+ #:namespace
+ "guixqafrontpage"))
+ (database
+ (setup-database (assq-ref opts 'database)
+ metrics-registry)))
+
+ (when (assq-ref opts 'submit-builds-for-patches)
+ (start-submit-patch-builds-thread database
+ "http://127.0.0.1:8746"
+ "https://data.qa.guix.gnu.org"))
+
+ (start-guix-qa-frontpage-web-server
+ (assq-ref opts 'port)
+ (assq-ref opts 'host)
+ (assq-ref opts 'assets-directory)
+ database)))