Radish alpha
r
rad:zwTxygwuz5LDGBq255RA2CbNGrz8
Radicle CI broker
Radicle
Git
Adding additional fields to RSS
Open did:key:z6MkkfM3...sVz5 opened 1 year ago

For consumers of the CI Broker RSS feed, I would suggest to add for each item some more information like:

  • RID
  • local ref announcement (patch id) that triggered ci run.

nice to haves:

  • Additional info on the ref (patch title, branch name, etc.)
  • Current status of the CI run (running or finished, and if failed or successfull)
liw commented 1 year ago

The RSS feeds the CI broker produces now have an HTML content that looks like this:

<item>
  <title>success: rad-ci run a222740e-c06a-4027-bfa9-3ab440436b6b</title>
  <link>http://radicle-ci/ambient-log/rad:z6QuhJTtgFCZGyQZhRMZmZKJ3SVG/bfbb7797-63a3-4e9e-ac74-8deb26a57301.html</link>
  <guid>a222740e-c06a-4027-bfa9-3ab440436b6b</guid>
  <pubDate>Tue, 18 Feb 2025 08:59:16 +0000</pubDate>
  <content:encoded>
<![CDATA[<DIV class="ci_run"><SPAN class="repoid">rad:z6QuhJTtgFCZGyQZhRMZmZKJ3SVG</SPAN><SPAN class="commit">de91b89704db186c7f681b094c7f70133fa45aec</SPAN><SPAN class="info_url">http:&#x2F;&#x2F;radicle-ci&#x2F;ambient-log&#x2F;rad:z6QuhJTtgFCZGyQZhRMZmZKJ3SVG&#x2F;bfbb7797-63a3-4e9e-ac74-8deb26a57301.html</SPAN><SPAN class="status">finished</SPAN><SPAN class="result">success</SPAN></DIV>]]>
  </content:encoded>
</item>

The content field is new. Does that look usable for your purposes?

The data in the entry is generated from a Rust data type like this:

struct RssEntry {
    repoid: RepoId,
    commit: Oid,
    info_url: Option<String>,
    status: RunState,
    result: Option<RunResult>,
}
liw commented 7 months ago

I’m willing to keep RSS generation in the CI broker, but for now it’s of a much lower priority than job COBs.