Commit graph

58 commits

Author SHA1 Message Date
af11d54d0c Add button to batch-queue commits without runs 2023-08-17 19:13:24 +02:00
4f2b0a0b88 Add admin button to update repo 2023-08-17 18:20:37 +02:00
f12da915a9 Switch from tracing to log crate 2023-08-17 03:09:24 +02:00
a54e842478 Restructure config file 2023-08-17 00:28:58 +02:00
2ba14d25be Allow specifying no metrics on /graph/data 2023-08-16 03:37:19 +02:00
8198cac0fe Debug-log graph data request timings 2023-08-16 00:59:11 +02:00
4d222e971c Restrict graph to tracked commits 2023-08-16 00:58:44 +02:00
91e4883137 Fix data preparation 2023-08-16 00:10:25 +02:00
678d3f391b Show metrics as tree 2023-08-15 23:21:15 +02:00
82e2385f59 Group migrations 2023-08-15 19:01:28 +02:00
2714280567 Sort commits topologically 2023-08-15 16:08:31 +02:00
146bab4e7c Add todos 2023-08-15 01:28:25 +02:00
33ca3207e7 Show only tracked commits 2023-08-15 01:00:12 +02:00
476fd84d2d Display test graph 2023-08-15 00:59:46 +02:00
3c9fc1ce75 Return graph data at /graph/data 2023-08-14 23:45:05 +02:00
b0eb94a02a Add graph tab 2023-08-14 17:49:21 +02:00
1ec72c92d5 Allow worker to specify bench method as string 2023-08-14 16:47:00 +02:00
3de35e3ac8 Use RFC 3339 dates in worker endpoint 2023-08-14 16:31:44 +02:00
dd073b4c0d Include worker name and info in run 2023-08-14 14:26:53 +02:00
01124d719b Add optional run end time override 2023-08-14 14:15:38 +02:00
2620530cc2 Implement queue task deletion 2023-08-14 12:41:47 +02:00
7f975a1fd0 Implement more /admin/queue/* endpoints 2023-08-14 12:23:22 +02:00
2b6c339c70 Port queue page 2023-08-14 12:23:22 +02:00
a36b188938 Port index page 2023-08-13 23:06:05 +02:00
3bfae9c0ad Port worker page 2023-08-13 23:02:18 +02:00
cf8ab2884f Show finished runs 2023-08-13 22:59:45 +02:00
98132cc00b Link without creating a Base 2023-08-13 21:26:06 +02:00
373b3168f1 Port commit page 2023-08-13 21:26:06 +02:00
db0234b750 Start page reorganization 2023-08-13 20:50:06 +02:00
1ead78d44f Make static file links typesafe 2023-08-13 20:49:48 +02:00
e64ea7ac12 Make most links typesafe 2023-08-13 20:49:48 +02:00
30ddf1e9b2 Ensure web_base does not end in / 2023-08-13 19:57:28 +02:00
18e35184a5 Prepare more type-safe linking 2023-08-13 19:53:49 +02:00
4ccf06db8b Use typed paths for all endpoints 2023-08-13 19:30:52 +02:00
058ed2e85c Move typed paths to separate module 2023-08-13 19:30:52 +02:00
3d5a277234 Use typed paths in worker 2023-08-13 16:13:59 +02:00
88d9a1f818 Move worker api to server::web::api::worker 2023-08-13 16:04:48 +02:00
087ecfd783 Move /commit/:hash/enqueue to /admin/queue/add 2023-08-13 15:56:34 +02:00
c7a89867a7 Restructure shared types and db columns
Now, the server sends the runner pretty much all run metadata. This way,
the reservation the server makes for the runner is accurate, providing
the runner responds with the same metadata it was sent. It also means
that only the server's system clock is relevant for tie breakers, and a
run's duration spans from the moment it is reserved to the moment it is
saved.

Also, the bench method is now always called `bench_method` and a
human-readable description is stored in the database for each run.
2023-08-12 21:23:36 +02:00
22efa5bfc9 Save work before fetching queue 2023-08-12 14:34:03 +02:00
d15d6588f7 Improve and fix runner API
- The server now also signals abort_work if the commit is no longer in
  the queue.
- The server now immediately reserves the work it gives to the worker,
  so other idle workers won't get the same work.
- The server now chooses a run id, not the worker. The worker can still
  submit work under arbitrary run ids when no id is known, for example
  when importing runs from another database.
2023-08-12 13:19:16 +02:00
dd45be98a5 Add todo 2023-08-12 02:33:08 +02:00
9744d5c059 Add todos 2023-08-11 21:47:58 +02:00
48693d3f1c Add "Enqueue" button to commits 2023-08-11 16:50:32 +02:00
5e0b8e3c8c Store finished work in db 2023-08-11 15:16:20 +02:00
a9e08505bc Stream repo and bench repo worktree tars 2023-08-11 14:42:39 +02:00
6f4793bcf2 Rename runners to workers 2023-08-11 02:12:38 +02:00
7911a67906 Overhaul runner protocol
The JSON should now be nicer to work with.
2023-08-11 02:12:38 +02:00
b16b3a668e Fix runners not disappearing 2023-08-11 02:12:38 +02:00
2079d0b12d Fix /api/runner/status 2023-08-11 02:12:38 +02:00