Commit Graph
100 Commits
Author SHA1 Message Date
Lars Wirzenius 66fca59f60 fix: broker is wanted by multi-user, not just default 2026-05-27 09:55:35 +03:00
Lars Wirzenius f1c6ddddc0 fix: enable radicle-node and ci broker services
So they restart on boot.
2026-05-27 09:55:19 +03:00
Lars Wirzenius ea72a767d5 fix: only init config if missing 2026-05-26 19:25:15 +03:00
Lars Wirzenius 88320f0319 fix: optionally use a predefined Radicle node key 2026-05-26 18:21:14 +03:00
Lars Wirzenius c11554ad1f fix: CI broker service requires node service 2026-05-26 17:07:53 +03:00
Lars Wirzenius 8aa71af4d0 fix: link markup in user guide 2026-05-26 13:18:05 +03:00
Lars Wirzenius 2d3a0e377d doc: point to installation script and playbook in userguide 2026-05-26 12:16:30 +03:00
Lars Wirzenius 141886f43e feat: Ansible role and playbook for setting up a CI node 2026-05-26 12:05:23 +03:00
Lars Wirzenius f9a41d916e feat: add shell script to set up Debian host as a Radicle CI node 2026-05-26 11:26:13 +03:00
Lars Wirzenius cf492bba54 chore: prepare release version 0.28.0 2026-05-20 19:11:37 +03:00
Lars Wirzenius ed7170c39e chore: update Radicle home page URLs to new domain 2026-05-12 10:03:30 +03:00
Lars Wirzenius bf535363c1 chore: update Radicle Explorer URLs to new official instance 2026-05-12 09:40:16 +03:00
Lars Wirzenius bf8be65677 feat: allow disabling updates to job COBs in config 2026-05-11 15:03:21 +03:00
Lars Wirzenius ecce2a73a5 feat: add a variant to KnownJobCobs that makes no updates 2026-05-11 14:30:34 +03:00
Lars Wirzenius fd7d8a91af refactor: make KnownJobCobs into an enum
This is in preparation of adding a do-not-update variant.
2026-05-11 14:26:02 +03:00
Lars Wirzenius 7739164263 refactor: use a clearer way to get matching values from hashmap
Found by clippy.
2026-05-05 14:39:10 +03:00
Lars Wirzenius 276187c685 feat(src/pages.rs): shorten meta refresh value a lot
Five seconds will work better for demos, but may be too short for real
use.
2026-04-13 11:51:13 +03:00
Lars Wirzenius 8da2ffd0cf fix(src/config.rs): point at correct place where meta refresh is set 2026-04-13 11:50:11 +03:00
Lars Wirzenius d93a285e33 fix(doc/userguide.md): fix typo 2026-04-13 11:49:45 +03:00
Lars Wirzenius 071e3e7b95 refactor(src/notif.fs): fix typo in constant name 2026-04-13 11:43:30 +03:00
Lars Wirzenius bbc4e4239b fix(src/config.rs): fix typo in doc comment 2026-04-13 11:42:15 +03:00
Lars Wirzenius e5d249bd3c chore: update debian/changelog with tentative relese version 2026-03-28 11:09:03 +02:00
Lars Wirzenius 980df1f55c chore: prepare release 0.27.0 2026-03-24 09:05:32 +02:00
Lars Wirzenius a3dacbe037 chore: prepare release 0.25.0 2026-03-06 10:01:59 +02:00
Lars Wirzenius ce827de8b9 fix: use new workspace path in Ambient
Ambient lint looks for these.
2026-03-06 09:00:19 +02:00
Lars Wirzenius 8336d8c934 chore: delete obsolete RUSTSEC and copyright licence 2026-03-06 08:57:20 +02:00
Lars Wirzenius 369227ca55 chore: bump Radicle dependencies
Also fix up things that break.
2026-03-06 08:56:47 +02:00
Lars Wirzenius 88fd92e894 chore: update dependency on html-page
No other changes needed, but this will mean radicle-ci-broker and
radicle-ci-ambient depend on the same version of html-page.
2026-03-06 08:56:33 +02:00
Lars Wirzenius 472d6486f0 fix: document installing from Radicle APT repository 2026-03-04 09:48:41 +02:00
Lars Wirzenius fbd992f319 chore: bump indirect dependency on keccak to non-yanked version 2026-02-15 18:16:01 +02:00
Lars Wirzenius bb1b8b5e58 chore: bump dependency on html-page to new 0.4.2
Fix warnings about argument type. The new version allows borrowed or
owned values.
2026-02-15 18:12:32 +02:00
Lars Wirzenius 02e259f0df refactor: add ergo::Oid export
Use this consistently to reduce confusion between Oid types from
Radicle.
2026-02-13 14:28:26 +02:00
Lars Wirzenius 1620a6a147 refactor: QueueAdder holds an ergo::Radicle
This still loads the profile, because Worker needs a 'static lifetime
and this is the easiest way to achieve that.
2026-02-13 14:28:26 +02:00
Lars Wirzenius 0e2bc0de39 refactor: drop Worker::name, now unnecessary 2026-02-13 14:28:26 +02:00
Lars Wirzenius a7c73cece8 refactor: make Worker::NAME be a static string 2026-02-13 14:28:26 +02:00
Lars Wirzenius a5842ff37d refactor: CiEventSource gets a reference to a profile instead of owning it 2026-02-13 14:28:26 +02:00
Lars Wirzenius f38a67bf51 refactor: use ergo module to load profile 2026-02-13 14:28:26 +02:00
Lars Wirzenius 82ed0bc067 chore: rewrite nested if-lets to not be nested
This is new idiomatic style in the 2024 edition, it seems.
2026-02-11 15:07:36 +02:00
Lars Wirzenius 2ee045e2ce chore: update dependency on time crate
For https://rustsec.org/advisories/RUSTSEC-2026-0009
2026-02-11 14:05:35 +02:00
Lars Wirzenius cdeb15990e doc: add link to Radicle CI home page 2026-01-23 09:11:12 +02:00
Lars Wirzenius 2e2c3f3851 chore: prepare release 0.25.0 2026-01-20 09:27:08 +02:00
Lars Wirzenius 13a686078a fix: adapt to Oid version differences, Patch title generation 2026-01-16 17:59:28 +02:00
Lars Wirzenius 6c3970542c chore: update dependncies on Radicle crates 2026-01-16 17:59:28 +02:00
Lars Wirzenius d1d0bf8690 fix: use now-correct error type 2026-01-16 17:59:28 +02:00
Lars Wirzenius ad594b6286 fix: ignore all unhandled node events 2026-01-16 17:59:28 +02:00
Lars Wirzenius 2ef340ba2e feat: add logger function of unhandle node eventws 2026-01-16 16:54:03 +02:00
Lars Wirzenius bb550462fa chore: drop dependency on radicel-git-ext, unused 2026-01-16 16:25:49 +02:00
Lars Wirzenius cdf88d6750 chore: update dependency on nuuid 2026-01-16 16:17:50 +02:00
Lars Wirzenius 9e8294ef50 chore: update dependency on thiserror 2026-01-16 16:15:35 +02:00
Lars Wirzenius 3c5c684dae chore: update dependency on tempfile 2026-01-16 16:14:38 +02:00
Lars Wirzenius fd8f47b93a chore: update dependency on subplotlib 2026-01-16 16:13:25 +02:00
Lars Wirzenius b1c19a4c84 chore: update dependencyu on regex 2026-01-16 16:04:53 +02:00
Lars Wirzenius 6bcb6a69fa chore: update dependency on nonempty to 0.12.0 2026-01-16 16:02:17 +02:00
Lars Wirzenius a014cf6e3b chore: depend on newer version of duration-str 2026-01-16 15:54:07 +02:00
Lars Wirzenius 41b30adb34 refactor: express dependency on radicle same way as others 2026-01-16 15:51:27 +02:00
Lars Wirzenius b6efecdd72 chore: update .ambient/dch 2025-12-21 06:12:55 +02:00
Lars Wirzenius 322b61c550 chore: refresh dch from ambient-actions
Fixes bash invocation so it should work on NixOS.
2025-12-16 15:41:46 +02:00
Lars Wirzenius e681fc8884 refactor: drop unnecessary result type for capture method 2025-12-11 19:34:18 +02:00
Lars Wirzenius e90dfebdde refactor: avoid exposing types from dependencies in error types 2025-12-10 14:10:09 +02:00
Lars Wirzenius 1921aed19d tests: drop 0.23.0 from upgrade tests 2025-12-09 16:42:17 +02:00
Lars Wirzenius e36b10a4cb tests: add release 0.24.0 to upgrade tests 2025-12-09 16:37:52 +02:00
Lars Wirzenius f307ac433d chore: prepare release 0.24.0 2025-12-09 15:54:05 +02:00
Lars Wirzenius 7a1320aa8c ci: initialize Radicle node before running test suite
Unit tests need access to a Radicle node.
2025-12-05 16:35:46 +02:00
Lars Wirzenius 565892557b feat: make announcing option for "cibool cob" 2025-12-05 16:14:09 +02:00
Lars Wirzenius e541019e3a feat: cache job COB ID lookup 2025-12-05 16:13:38 +02:00
Lars Wirzenius 21db3db163 feat: add "cibtool cob" to add runs to a job COB 2025-12-05 16:13:05 +02:00
Lars Wirzenius c60c427eb9 feat: make INFO log messages for a typical CI run easier to follow
Drop several messages to DEBUG level, since they're really meant for
CI broker developer debugging. At INFO level they obscure the log
story.

Changed run id to be logged as a string, not debug.

Added broker run ID to run start and end messages, for clarity.:q
2025-12-01 13:19:06 +02:00
Lars Wirzenius 24c95c85db feat: check at configuration load time that default adapter is set if needec 2025-11-28 16:57:19 +02:00
Lars Wirzenius 8413204baf chore: drop depedency on anyhow 2025-11-28 16:37:51 +02:00
Lars Wirzenius ac530cf29e doc: explain limit on concurrency per repo 2025-11-28 16:09:09 +02:00
Lars Wirzenius 7d740a9f69 feat: log enitre filter decision as one message
To get the whole filter decision extract the line
from the log and run:

jq -r .fields.decision /tmp/x | jq .
2025-11-28 15:27:06 +02:00
Lars Wirzenius 1a329c791a chore: drop unused dependency on ctor 2025-11-25 12:58:43 +02:00
Lars Wirzenius d75150dd4e chore: drop unused dependency sqlite3-sys
We depend on it indirectly, but don't use it directly, so drop it.
2025-11-25 12:54:43 +02:00
Lars Wirzenius 8fbe2d8c5c chore: drop unused dependency valuable 2025-11-25 12:52:45 +02:00
Lars Wirzenius 25c9f0df22 chore: bump dependency on Subplot
We don't need the subplot-build dependency at all any more. It's being
deprecated upstream and we don't use it.
2025-11-25 12:28:17 +02:00
Lars Wirzenius 99fc34b747 tests: drop version 0.22.0 from upgrade tests 2025-11-25 11:01:38 +02:00
Lars Wirzenius ef0a8aa1c3 tests: add version 0.23.0 to upgrade tests 2025-11-25 10:57:57 +02:00
Lars Wirzenius 460f08e661 chore: prepare release 0.23.0 2025-11-25 10:27:06 +02:00
Lars Wirzenius e98f577b87 fix(src/filter.rs): log the correct filter for tag events 2025-11-25 09:07:21 +02:00
Lars Wirzenius beaf6221c0 feat: terminate a CI run 2025-11-24 13:08:55 +02:00
Lars Wirzenius c537e57dd6 feat: if the event queue a shutdown event, always pick it first
Rationale: we don't want to wait for a long time until shutdown starts.
2025-11-19 12:18:18 +02:00
Lars Wirzenius 5d8d60beee doc: write document on how to implement a CI adapter 2025-11-17 15:51:58 +02:00
Lars Wirzenius 97762c6dde tests: drop 0.21.0 from upgrade tests 2025-11-13 17:27:10 +02:00
Lars Wirzenius 20f36b07d0 tests: add v0.22.0 to upgrade tests 2025-11-13 17:24:24 +02:00
Lars Wirzenius 01bad3406e chore: prepare for release 0.22.0 2025-11-12 15:47:39 +02:00
Lars Wirzenius 179ce402ca doc: add AnyDelegate to list of filters 2025-11-12 14:41:27 +02:00
Lars Wirzenius 0a77f80d31 fix: typo in filename 2025-11-10 18:18:33 +02:00
Lars Wirzenius 0dc74cf8e7 doc: document how to add a new event filter 2025-11-10 17:31:17 +02:00
Lars Wirzenius 94fbd9f72f feat: add the AnyDelegate filter 2025-11-10 17:13:15 +02:00
Lars Wirzenius 31543ca1db chore: avoid 'cargo deny' complaints about advisories
Update Cargo.lock.

Some Unicode crates are unmaintained. There are no replacements, so
there's currently nothing we can do about it.
2025-10-29 13:42:01 +02:00
Lars Wirzenius e8217e8c80 test(ci-broker.md): change shutdown scenario to verify cleanliness 2025-10-20 09:25:44 +03:00
Lars Wirzenius 92f309a75b chore: drop unused doc/publish.sh
This was a remenant from an older era of Radicle CI.
2025-10-20 09:25:44 +03:00
Lars Wirzenius 91358ed2db chore: drop unused src/pullqueue.rs 2025-10-20 09:14:07 +03:00
Lars Wirzenius 09d21f7624 feat! in ErgoError, hide types from dependencies
The should be no need for callers to know the specific type of source
errors, but exposing them can lead to trickier crate dependency
management, so we now hide them.
2025-10-20 09:03:47 +03:00
Lars Wirzenius 7995524107 docs(RELEASE.md): add "add new release to upgrade tests" 2025-10-16 18:17:14 +03:00
Lars Wirzenius b9a8f9d586 tests: drop old releases, to speed up upgrade test 2025-10-16 18:15:45 +03:00
Lars Wirzenius 0c1d5ac76d tests: add missing releasex to upgrade tests 2025-10-16 18:12:56 +03:00
Lars Wirzenius dffe0883f5 ci: disble cargo_fmt for now 2025-10-14 17:20:28 +03:00
Lars Wirzenius 7ad346eb4a chore: cargo fmt 2025-10-14 17:15:35 +03:00
Lars Wirzenius 7b865840e8 fix(src/queueproc.rs): logic for when to stop processing events
My previous refactor introduced bugs into the main loop of queue
processing, specifically how it decides to finish the loop. The
problem is that there are several factors and it's sufficiently
tricky that this was hard to get right.

The logic should now be simpler and more easily understood. We end the
loop once the queue is empty AND the channel notifying us of new
events in the queue haw been closed AND we're no longer running any
adapters.
2025-10-14 17:02:31 +03:00