diff options
author | Christopher Baines <mail@cbaines.net> | 2022-08-21 17:21:28 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2022-09-03 09:30:58 +0100 |
commit | 731e13d2a4dbef6b9bafc22a7bd29a77b38a6455 (patch) | |
tree | 0d4c6e69614b6a7266cc18ae6a321d8dc6deebee /scripts | |
parent | 42efa5c932d168aeb724727b8a564d8e89263094 (diff) | |
download | qa-frontpage-731e13d2a4dbef6b9bafc22a7bd29a77b38a6455.tar qa-frontpage-731e13d2a4dbef6b9bafc22a7bd29a77b38a6455.tar.gz |
Add lots more functionality
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/guix-qa-frontpage.in | 39 |
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))) |