Lars Wirzenius
00affabff8
chore: set authors in Cargo.toml
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-04-03 09:37:57 +03:00
Lars Wirzenius
5d7efc43fa
chore: cargo update
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-04-03 09:37:46 +03:00
Lars Wirzenius
8770e40bab
docs: tweak statement on production readiness
...
But really only test triggering of CI.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-04-02 10:01:09 +03:00
Lars Wirzenius
1e0c9ed755
feat! add version field to request messages
...
Each request message has a field "version" set to an integer. An
adapter can check that it gets the version of the message it knows how
to handle.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-04-02 09:32:17 +03:00
Lars Wirzenius
601abc94d3
feat! drop the RunResult::Error variant
...
It was never very clear how Failure and Error actually differ, and
making the choice was thus unnecessarily difficult for an adapter
implementation. Having just Failure is simpler.
We'll re-introduce other variants if there are actual use cases and
things aren't vague.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-04-02 09:18:42 +03:00
Lars Wirzenius
68fd1877e6
chore: depend on the radicle crate via crates.io
...
If nothing else, this is necessary for publishing the broker to
crates.io.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-31 11:22:36 +03:00
Lars Wirzenius
d4f7475ab8
docs: update README, add licenses
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-31 11:16:58 +03:00
Lars Wirzenius
ed9df5a86e
feat: show result of latest run on front page
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-31 10:57:38 +03:00
Lars Wirzenius
f9196a2c9a
fix: allow Whence::Patch revision to be optional
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-19 17:48:50 +02:00
Lars Wirzenius
10bdac0768
refactor: pagegen.rs
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-19 17:26:50 +02:00
Lars Wirzenius
42603ef31f
feat: add patch revisions to report pages
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-19 17:07:42 +02:00
Lars Wirzenius
3285c0d407
feat: show JSON status on HTML report front page
...
Also, prettify the JSON.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-19 12:41:27 +02:00
Lars Wirzenius
0935bbdbbe
feat: adjust logging to stderr via pretty_env_logger
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-18 18:16:05 +02:00
Lars Wirzenius
706d92b9c2
docs(README.md): update
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-18 16:16:19 +02:00
Lars Wirzenius
30c7d59e68
docs: bring architecture document up to date
...
Various updates to bring the text of the architecture document up to
date with what has been implemented. Most of the speculative "we will
probably do it like this" parts have been dropped. Various fixes have
been made.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-18 15:58:07 +02:00
Lars Wirzenius
4740c81c0e
fix: make who in Whence variants optional
...
This should allow us to deal with old run record in the database.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-18 12:07:59 +02:00
Lars Wirzenius
1c64e2eb04
feat: show who made patch/commit CI is run for
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-18 10:54:19 +02:00
Lars Wirzenius
c0c48fd3c0
feat: add run count for each repo on front page
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-15 16:42:18 +02:00
Lars Wirzenius
88e4af565a
feat: refresh front page 300 seconds (5 min)
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-15 16:33:30 +02:00
Lars Wirzenius
de9c54ece4
feat: refersh front page every 10 seconds
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-15 16:26:15 +02:00
Lars Wirzenius
4c504912e3
feat: add Request::try_from_str for tests
...
Specifically, radicle-native-ci tests.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-12 17:30:35 +02:00
Michalis Zampetakis
de44786001
Docs: Adds db section in main Readme
2024-03-08 08:36:40 +02:00
Lars Wirzenius
23be5b2133
feat! make list of CI runs in broker be persistent
...
This means they won't vanish when the broker is restarted.
BREAKING CHANGE: the configuration files MUST now have a field "db"
that is a path to the database file to use. The file will be created
if needed.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-06 19:36:26 +02:00
Lars Wirzenius
173231d46c
tests: add Radicle native CI file to run CI on collaborating nodes
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 18:38:17 +02:00
Lars Wirzenius
eac7f53dff
fix: serialize EventType to lowercase
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 18:36:21 +02:00
Lars Wirzenius
6260b8117e
refactor: reorder imports
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 18:36:13 +02:00
Lars Wirzenius
68b589ce37
feat: use an enum for event types
...
Stringly typing isn't checked by the compiler.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 18:13:16 +02:00
Lars Wirzenius
fee8700dc8
feat: add a RequestBuilder to create Request messages
...
A builder interface is easier to use I find.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 18:01:57 +02:00
Lars Wirzenius
65c2cbfd92
fix(src/event.rs): remove unnecessary link target in doc comment
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 17:32:51 +02:00
Lars Wirzenius
dbc269b2a1
fix: use node's own alias in report page titles
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 16:27:05 +02:00
Lars Wirzenius
fd672cbdf7
chore: format code
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 16:04:18 +02:00
Lars Wirzenius
3c2c2c2494
fix: avoid unnecessary return at the end of a function
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 12:57:39 +02:00
Lars Wirzenius
a4d6e64dd2
fix: add "branch" to pattern match
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-05 12:56:37 +02:00
Michalis Zampetakis
472ca9ba8a
Adds branch name for push events
2024-03-05 12:55:06 +02:00
Lars Wirzenius
f0cb3d2944
fix: call to create patch in test to use COB cache
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-04 19:01:41 +02:00
Lars Wirzenius
7861fdff9e
fix: update Cargo.lock to drop radicle-native-ci
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-04 18:50:13 +02:00
Lars Wirzenius
6877e2c702
chore: drop unused dependency on radicle-native-ci
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-04 18:44:17 +02:00
Lars Wirzenius
d9aafdc87c
fix: link to run log from native CI
...
We used to have two IDs for each CI run: one assigned by the broker
and one by the adapter. The native CI adapter writes logs to a
directory named by the id it chose itself: it doesn't know the on
chosen by the broker. The broker was generating a report page that
links to a run log using the broker-chosen id. Oops.
Drop the id chosen by the broker, it doesn't serve any useful purpose
anymore.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-04 18:12:52 +02:00
Lars Wirzenius
443bf0b184
feat! generate HTML report pages
...
Instead of only a single JSON file, updated every so often, also
generate HTML pages that show CI broker status, and lists every
repository for which the broker has run CI.
This currently assumes the native CI adapter, but that can be fixed to
be more generic later.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-03-04 16:43:51 +02:00
Lars Wirzenius
d96861408c
fix: update status page atomically
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-20 09:41:28 +02:00
Lars Wirzenius
43b434fadd
feat: allow config file to set a status page update interval
...
Default is now 10 seconds.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-20 09:36:01 +02:00
Lars Wirzenius
5d3aa44a92
feat: update status page in a background thread
...
Previously, we updated the status page only when we got a new broker
event, or after a CI run finished. This made it unsuitable as a "is
the broker alive?" service.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-19 20:54:47 +02:00
Lars Wirzenius
2dafe88a84
fix: list formatting
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-16 14:18:37 +02:00
Lars Wirzenius
729e054222
fix: formatting of list
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-16 14:16:44 +02:00
Lars Wirzenius
24fb53b395
docs: clarify wording
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-16 13:54:54 +02:00
Lars Wirzenius
d6be37d7ee
feat: update a status page, if configured
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-15 18:36:00 +02:00
Lars Wirzenius
15ddf5d0e7
chore: add deb packaging
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-12 12:17:22 +02:00
Lars Wirzenius
ab5197b7e4
fix: use git dependency on radicle, drop features
...
With this, importing radicle::prelude::RepoId works for me again.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-08 17:24:32 +02:00
Lars Wirzenius
0e80ed89e2
fix: import RepoId from identity module
...
rust-analyzer gets confused for me when it's imported from prelude.
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-05 13:26:19 +02:00
Lars Wirzenius
b483ab914d
style: add note to errors.rs about module specific error types
...
Signed-off-by: Lars Wirzenius <liw@liw.fi >
2024-02-05 13:24:48 +02:00