This project is mirrored from https://git.savannah.gnu.org/git/guix/guix-cuirass.git/.
Pull mirroring updated .
- Sep 17, 2020
-
-
Mathieu Othacehe authored
* src/cuirass/templates.scm (global-metrics-content): Rename "Builds speed" section to "Builds completion".
-
Mathieu Othacehe authored
* tests/metrics.scm ("builds-per-day", "new-derivations-per-day"): Fix tests results that were depending of the local time. ("evaluation-completion-speed"): Adapt to new unit.
-
Mathieu Othacehe authored
* src/cuirass/templates.scm (global-metrics-content): Add legends.
-
Mathieu Othacehe authored
* src/cuirass/templates.scm (make-line-chart): Do not display chart title.
-
Mathieu Othacehe authored
* src/cuirass/http.scm (url-handler): Move metric page creation to ... (metrics-page): ... this new procedure. Pass average evaluation build start time and evaluation completion speed to "global-metrics-content". * src/cuirass/templates.scm (make-line-chart): Add "time-x-axes?", "xaxes-labels", "x-label" and "y-label" arguents. (global-metrics-content): Add "avg-eval-build-start-time" and "eval-completion-speed" arguments. Create and display two new charts from those metrics.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-evaluation-completion-speed): Change the completion speed unit to builds/hour. (%metrics): Adapt comment.
-
- Sep 16, 2020
-
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-average-build-start-time-per-eval, db-average-build-complete-time-per-eval, db-evaluation-completion-speed, db-latest-evaluations): New procedures. (%metrics): Add 'average-eval-build-start-time, 'average-eval-build-complete-time, 'evaluation-completion-speed. (db-update-metrics): Update evaluation related metrics for the evaluations added the past three days. * tests/metrics.scm ("average-eval-build-start-time", "average-eval-build-complete-time", "evaluation-completion-speed"): Add new tests.
-
Mathieu Othacehe authored
* bin/cuirass.in (main): Log metrics update duration.
-
- Sep 15, 2020
-
-
Mathieu Othacehe authored
* tests/metrics.scm (nearest-exact-integer): Remove as unused. ("db-update-metrics"): Test that 'pending-builds metric is updated on "db-update-metrics" call.
-
Mathieu Othacehe authored
* tests/metrics.scm: New file. * Makefile.am (TESTS): Add it.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-percentage-failed-eval-per-spec): New procedure. (%metrics): Add 'percentage-failure-10-last-eval-per-spec, 'percentage-failure-100-last-eval-per-spec and 'percentage-failed-eval-per-spec metrics. (db-update-metrics): Add them. * src/cuirass/templates.scm (global-metrics-content): Add "percentage-failed-eval" argument. Use it to display the "percentage of failed evaluations" table. * src/cuirass/templates.scm (url-handler): Adapt accordingly.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-average-eval-duration-per-spec): Order results by descending rowid and adjust docstring.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm: Add a warning about metric insertion in %metrics list.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-new-derivations-previous-day): New procedure. (%metrics): Add 'new-derivations-per-day. (db-update-metrics): Add it. * src/cuirass/templates.scm (make-line-chart): Add support for multiple datasets. Also add "interpolation?" and "legend?" options. (global-metrics-content): Add "new-derivations-per-day" argument. Adapt "Builds per day" chart so that it uses two datasets from 'new-derivations-per-day and 'builds-per-day metrics. * src/cuirass/templates.scm (url-handler): Adapt accordingly.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-builds-previous-day): Only take into account the builds that are created and processed during the previous day.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-pending-builds, db-current-day-timestamp): New procedures. (%metrics): Add 'pending-builds. (db-update-metrics): Add it. * src/cuirass/templates.scm (global-metrics-content): Add "pending-builds" argument. Display pending builds in a line chart. * src/cuirass/http.scm (url-handler): Adapt "global-metrics-content" call accordingly.
-
Mathieu Othacehe authored
* src/cuirass/templates.scm (make-line-chart): Do not override onload callback as that would prevent us from adding multiple charts.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (%metrics): Rename 'builds-previous-day to 'builds-per-day. (db-update-metrics): Adapt accordingly. * src/cuirass/http.scm (url-handler): Ditto.
-
Mathieu Othacehe authored
* src/cuirass/metrics.scm (db-get-metrics-with-id): Order by descending rowid by default. * src/cuirass/http.scm (url-handler): Use the default order for "db-get-metrics-with-id".
-
- Sep 14, 2020
-
-
Mathieu Othacehe authored
* Makefile.am: Add "upgrade-11.sql", "chart.js" and "metrics.js". * bin/cuirass.in (main): Add 'metrics fiber. * src/cuirass/http.scm (%file-white-list): Add "js/chart.js". (url-handler): Add "/metrics" route. * src/cuirass/metrics.scm: New file. * src/cuirass/templates.scm (html-page): Add a "Global metrics" sub-menu to "Status" dropdown menu. (make-line-chart, global-metrics-content): New procedures. * src/schema.sql (Metrics): New table. * src/sql/upgrade-11.sql: New file. * src/static/js/chart.js: New file.
-
Mathieu Othacehe authored
* src/cuirass/database.scm (last-insert-rowid, expect-one-row, %sqlite-exec): Export them.
-
- Sep 10, 2020
-
-
Mathieu Othacehe authored
* Makefile.am (dist_sql_DATA): Add upgrade-9.sql and upgrade-10.sql.
-
Mathieu Othacehe authored
This is a follow-up of 154232bc. * tests/http.scm (evaluations-query-result): Add 'timestamp', 'checkouttime' and 'evaltime' fields. (fill-db): Pass a matching timestamp to "db-add-evaluation" calls.
-
Mathieu Othacehe authored
The Evaluation table currently has an 'in_progress' field. Distinction between succeeded and failed evaluations are based on the presence of Builds records for the evaluation. It it also not possible to distinguish aborted evaluations from failed evaluations. Rename 'in_progress' field to 'status'. The 'status' field can be equal to 'started', 'succeeded', 'failed' or 'aborted'. * src/cuirass/database.scm (evaluation-status): New exported enumeration. (db-set-evaluations-done, db-set-evaluation-done): Remove them. (db-abort-pending-evaluations, db-set-evaluation-status): New exported procedures. (db-add-evaluation, db-get-builds, db-get-evaluations, db-get-evaluations-build-summary, db-get-evaluation-summary): Adapt to use 'status' field instead of 'in_progress' field. * src/cuirass/templates.scm (evaluation-badges): Ditto. * src/schema.sql (Evaluations): Rename 'in_progress' field to 'status'. * src/sql/upgrade-10.sql: New file. * bin/cuirass.in (main): Use "db-abort-pending-evaluations" instead of "db-set-evaluations-done". * src/cuirass/base.scm (evaluate): Use "db-set-evaluation-status" instead of "db-set-evaluations-done". (build-packages): Use "db-set-evaluation-status" instead of "db-set-evaluation-done". * tests/database.scm (sqlite-exec): Adapt accordingly. * tests/http.scm (evaluations-query-result): Ditto.
-
- Sep 07, 2020
-
-
Mathieu Othacehe authored
Commit time can be far away from the actual push time. Thus, use the checkout time instead of the commit time to fill Checkouts 'timestamp' field. * src/cuirass/base.scm (fetch-input): Return the checkout time instead of the commit time.
-
- Sep 06, 2020
-
-
Mathieu Othacehe authored
This is a follow-up of d9879583. * src/cuirass/templates.scm (evaluation-build-table): Do not print evaluation date if the "timestamp" field equals zero.
-
Mathieu Othacehe authored
src/cuirass/database.scm (db-get-evaluations): Add support for "timestamp", "checkouttime" and "evaltime" fields, (db-get-evaluation-summary): ditto. src/cuirass/templates.scm (nearest-exact-integer, seconds->string): New procedures, (evaluation-build-table): print evaluation date and duration.
-
Mathieu Othacehe authored
src/cuirass/base.scm (fetch-input): Add the commit timestamp to the returned association list, (process-specs): Pass a timestamp taken at procedure start and another one taken after inputs are fetched to "db-add-evaluation" procedure. Once the evaluation is over, call "db-set-evaluation-time" to save the evaluation completion time. src/cuirass/database.scm (db-set-evaluation-time): New procedure, (db-add-checkout): Handle the "timestamp" field, (db-add-evaluation): add "checkouttime" and "evaltime" arguments. Modify the associated SQL query accordingly. (db-get-builds): Use "Builds.timestamp" instead of "timestamp" as this field is also part of the Evaluations table. src/schema.sql (Checkouts): Add "timestamp" field, (Evaluations): add "timestamp", "checkouttime" and "evaltime" fields. src/sql/upgrade-9.sql: New file. tests/database.scm (sqlite-exec): Adapt Evaluations table insertions to include "timestamp", "checkouttime" and "evaltime" required fields.
-
- Sep 02, 2020
-
-
Mathieu Othacehe authored
Fixes <https://issues.guix.gnu.org/43163>. * src/cuirass/http.scm (specification->json-object): New procedure, (url-handler): use it for "/specifications" route to convert specification objects into a representation suitable for json->scm. * tests/http.scm ("/specifications"): Test the above route.
-
- Aug 25, 2020
-
-
Mathieu Othacehe authored
* configure.ac: Add Guile-zlib dependency.
-
Mathieu Othacehe authored
* README (Requirements): Add Guile-zlib. * build-aux/guix.scm: Ditto. * src/cuirass/base.scm: Use Guile-zlib instead of (guix zlib).
-
- Aug 05, 2020
-
-
Mathieu Othacehe authored
Use the pre-unwind-handler of a catch clause instead of nesting with-throw-handler inside a catch clause. * src/web/server/fiberized.scm (with-ignored-disconnects): Remove it, (client-loop): replace "with-ignored-disconnects" with a catch clause.
-
- Aug 04, 2020
-
-
Mathieu Othacehe authored
EPIPE and ECONNRESET errors are already ignored when thrown by "sendfile" and "put-bytevector" procedures. It turns out "peek-char" can also cause such errors. So ignore such errors within the whole procedure. * src/web/server/fiberized.scm (client-loop): Wrap the whole procedure inside "with-ignored-disconnects" instead of wrapping individually "sendfile" and "put-bytevector" calls.
-
- Aug 03, 2020
-
-
Mathieu Othacehe authored
This is a follow-up of 2094d680. * src/cuirass/http.scm (request-parameters): Fix typo.
-
Mathieu Othacehe authored
Handle requests such as "/build/?nr" by ignoring parameters without any associated value. * src/cuirass/http.scm (request-parameters): Ignore silently parameters without an associated value. * tests/http.scm: Add a corresponding test case.
-
Mathieu Othacehe authored
* tests/http.scm: Add new test cases covering some erroneous routes.
-
Mathieu Othacehe authored
This is a follow-up of 614ea057. * src/cuirass/http.scm (url-handler): Fix string concatenation.
-
Mathieu Othacehe authored
* src/cuirass/http.scm (url-handler): Handle the id -> number conversion directly in the route declaration.
-
Mathieu Othacehe authored
* src/cuirass/http.scm (url-handler): Handle erroneous id -> number conversion on "/build/id/log/raw" route.
-
Mathieu Othacehe authored
The request "/build/2465370mdb%22fx'ggx/details" causes a select query on the whole Builds table, because failed "string->number" conversion is not handled. * src/cuirass/http.scm (url-handler): Handle erroneous id -> number conversion on "/build/id/details" route.
-