rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 heartwood0908c65f504ec56bcb368b3a020ddee5f251eb56
{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5",
"name": "heartwood",
"description": "Radicle Heartwood Protocol & Stack",
"private": false,
"default_branch": "master",
"delegates": [
"did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT",
"did:key:z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW",
"did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"did:key:z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz",
"did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
]
},
"action": "Created",
"patch": {
"id": "7fd08a79d45e9f225e561510ebea9a88712cd7f9",
"author": {
"id": "did:key:z6Mkgfwr3p56v3hg1qwZaVj5UHYoaVEQoVWV23mo2iFFBYQp",
"alias": "spacefrogg"
},
"title": "httpd: Filter-out private-but-pinned repos",
"state": {
"status": "merged",
"conflicts": []
},
"before": "9767b485c2aad1e23097d2b5165287ba84cfa452",
"after": "0908c65f504ec56bcb368b3a020ddee5f251eb56",
"commits": [
"0908c65f504ec56bcb368b3a020ddee5f251eb56"
],
"target": "6cfed884bf37cba1e0d8e97fa8b0e94df4a04b1f",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "7fd08a79d45e9f225e561510ebea9a88712cd7f9",
"author": {
"id": "did:key:z6Mkgfwr3p56v3hg1qwZaVj5UHYoaVEQoVWV23mo2iFFBYQp",
"alias": "spacefrogg"
},
"description": "They should only be visible to localhost.",
"base": "9767b485c2aad1e23097d2b5165287ba84cfa452",
"oid": "0908c65f504ec56bcb368b3a020ddee5f251eb56",
"timestamp": 1708094275
}
]
}
}
{
"response": "triggered",
"run_id": {
"id": "d6396b15-13d4-4b44-8c2d-487f618b2dbf"
},
"info_url": "https://cci.rad.levitte.org//d6396b15-13d4-4b44-8c2d-487f618b2dbf.html"
}
Started at: 2025-10-21 17:36:34.384814+02:00
Commands:
$ rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 .
✓ Creating checkout in ./...
✓ Remote cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT added
✓ Remote-tracking branch cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/master created for z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT
✓ Remote cloudhead@z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW added
✓ Remote-tracking branch cloudhead@z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW/master created for z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW
✓ Remote fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM added
✓ Remote-tracking branch fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM/master created for z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM
✓ Remote erikli@z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz added
✓ Remote-tracking branch erikli@z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz/master created for z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz
✓ Remote lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz added
✓ Remote-tracking branch lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz/master created for z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz
✓ Repository successfully cloned under /opt/radcis/ci.rad.levitte.org/cci/state/d6396b15-13d4-4b44-8c2d-487f618b2dbf/w/
╭────────────────────────────────────╮
│ heartwood │
│ Radicle Heartwood Protocol & Stack │
│ 125 issues · 15 patches │
╰────────────────────────────────────╯
Run `cd ./.` to go to the repository directory.
Exit code: 0
$ rad patch checkout 7fd08a79d45e9f225e561510ebea9a88712cd7f9
✓ Switched to branch patch/7fd08a7 at revision 7fd08a7
✓ Branch patch/7fd08a7 setup to track rad/patches/7fd08a79d45e9f225e561510ebea9a88712cd7f9
Exit code: 0
$ git config advice.detachedHead false
Exit code: 0
$ git checkout 0908c65f504ec56bcb368b3a020ddee5f251eb56
HEAD is now at 0908c65f httpd: Filter-out private-but-pinned repos
Exit code: 0
$ git show 0908c65f504ec56bcb368b3a020ddee5f251eb56
commit 0908c65f504ec56bcb368b3a020ddee5f251eb56
Author: Michael Raitza <michael.raitza@tu-dresden.de>
Date: Fri Feb 16 15:27:08 2024 +0100
httpd: Filter-out private-but-pinned repos
They should only be visible to localhost.
diff --git a/radicle-httpd/src/api/v1/projects.rs b/radicle-httpd/src/api/v1/projects.rs
index 149b0058..0ebeeae8 100644
--- a/radicle-httpd/src/api/v1/projects.rs
+++ b/radicle-httpd/src/api/v1/projects.rs
@@ -100,7 +100,14 @@ async fn project_root_handler(
Visibility::Public => true,
})
.collect::<Vec<_>>(),
- ProjectQuery::Pinned => storage.repositories_by_id(pinned.repositories.iter())?,
+ ProjectQuery::Pinned => storage
+ .repositories_by_id(pinned.repositories.iter())?
+ .into_iter()
+ .filter(|repo| match &repo.doc.visibility {
+ Visibility::Private { .. } => addr.ip().is_loopback(),
+ Visibility::Public => true,
+ })
+ .collect::<Vec<_>>(),
};
projects.sort_by_key(|p| p.rid);
Exit code: 0
shell: 'cargo --version rustc --version cargo fmt --check cargo clippy --all-targets --workspace -- --deny clippy::all cargo build --all-targets --workspace cargo doc --workspace cargo test --workspace --no-fail-fast '
Commands:
$ podman run --name d6396b15-13d4-4b44-8c2d-487f618b2dbf -v /opt/radcis/ci.rad.levitte.org/cci/state/d6396b15-13d4-4b44-8c2d-487f618b2dbf/s:/d6396b15-13d4-4b44-8c2d-487f618b2dbf/s:ro -v /opt/radcis/ci.rad.levitte.org/cci/state/d6396b15-13d4-4b44-8c2d-487f618b2dbf/w:/d6396b15-13d4-4b44-8c2d-487f618b2dbf/w -w /d6396b15-13d4-4b44-8c2d-487f618b2dbf/w -v /opt/radcis/ci.rad.levitte.org/.radicle:/${id}/.radicle:ro -e RAD_HOME=/${id}/.radicle rust:bookworm bash /d6396b15-13d4-4b44-8c2d-487f618b2dbf/s/script.sh
+ cargo --version
info: syncing channel updates for '1.74-x86_64-unknown-linux-gnu'
info: latest update on 2023-12-07, rust version 1.74.1 (a28077b28 2023-12-04)
info: downloading component 'cargo'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: installing component 'cargo'
info: installing component 'rust-std'
info: installing component 'rustc'
cargo 1.74.1 (ecb9851af 2023-10-18)
+ rustc --version
rustc 1.74.1 (a28077b28 2023-12-04)
+ cargo fmt --check
error: 'cargo-fmt' is not installed for the toolchain '1.74-x86_64-unknown-linux-gnu'.
To install, run `rustup component add --toolchain 1.74-x86_64-unknown-linux-gnu rustfmt`
Exit code: 1
{
"response": "finished",
"result": "failure"
}