Radicle repository id rad:zwTxygwuz5LDGBq255RA2CbNGrz8
[2025-09-24T04:52:37Z INFO ambient] ambient starts [2J[01;01H[=3h[2J[01;01H[2J[01;01H[=3h[2J[01;01HBdsDxe: failed to load Boot0001 "UEFI QEMU DVD-ROM QM00005 " from PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0xFFFF,0x0): Not Found BdsDxe: loading Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x2,0x0) BdsDxe: starting Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x2,0x0) [0m[30m[47mWelcome to GRUB! [0m[37m[40m[0m[30m[40m[2J[01;01H[0m[37m[40mINFO: Block devices NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS vda 254:0 0 100G 0 disk ├─vda1 254:1 0 953M 0 part └─vda2 254:2 0 99.1G 0 part / vdb 254:16 0 6.1M 1 disk vdc 254:32 0 5M 1 disk vdd 254:48 0 9.3G 0 disk vde 254:64 0 46.6G 0 disk vdf 254:80 0 863.4M 1 disk INFO: Extracting tar archive from /dev/vdb drwxr-xr-x _rad/_rad 0 2025-09-24 04:48 ./ -rw-r--r-- _rad/_rad 1789 2025-09-24 04:48 ./plan.yaml -rwxr-xr-x _rad/_rad 6410400 2025-09-24 04:48 ./run-ci INFO: Extracted files: 4587526 4 drwxr-xr-x 2 1001 1001 4096 Sep 24 04:48 . 4587527 4 -rw-r--r-- 1 1001 1001 1789 Sep 24 04:48 ./plan.yaml 4587530 6264 -rwxr-xr-x 1 1001 1001 6410400 Sep 24 04:48 ./run-ci INFO: Running run-ci from /dev/vdb ================================ BEGIN ================================ [2025-09-24T04:48:46Z TRACE ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z DEBUG ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z INFO ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z WARN ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z ERROR ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts RunnablePlan::from_file: filename=plan.yaml steps: - action: mkdir pathname: /workspace - action: mkdir pathname: /workspace/artifacts - action: tar_extract archive: /dev/vdc directory: /workspace/src - action: tar_extract archive: /dev/vdf directory: /workspace/deps - action: tar_extract archive: /dev/vde directory: /workspace/cache - action: spawn argv: - find - /workspace - -maxdepth - '2' - -ls - action: cargo_fmt - action: cargo_clippy - action: shell shell: | export CARGO_TARGET_DIR=/workspace/cache export CARGO_HOME=/workspace/deps export HOME=/root export PATH="/root/.cargo/bin:/root/.radicle/bin:$PATH" # Check that `rad` is there. rad --help >/dev/null || (echo rad is not there; exit 1) cargo doc --workspace --no-deps # FIXME: We can't run upgrade tests from older versions because # Ambient only fetches dependencies for the current version. # Thus, we can't build the old versions. This is an Ambient # problem that we can't fix here. So we skip the upgrade tests. cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2 subplot docgen ci-broker.subplot -o doc/ci-broker.html subplot docgen doc/userguide.subplot -o doc/userguide.html make -C doc cp doc/*.html /workspace/artifacts/. - action: custom name: dch args: debfullname: Lars Wirzenius debemail: liw@liw.fi - action: deb - action: tar_create archive: /dev/vde directory: /workspace/cache - action: tar_create archive: /dev/vdd directory: /workspace/artifacts executor_drive: /dev/vdb source_drive: /dev/vdc artifact_drive: /dev/vdd cache_drive: /dev/vde deps_drive: /dev/vdf workspace_dir: /workspace source_dir: /workspace/src deps_dir: /workspace/deps cache_dir: /workspace/cache artifacts_dir: /workspace/artifacts [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace/artifacts", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace/artifacts", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src [2025-09-24T04:48:46Z TRACE ambient_ci::vdrive] extraction OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps [2025-09-24T04:48:49Z TRACE ambient_ci::vdrive] extraction OK [2025-09-24T04:48:49Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:49Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-09-24T04:48:49Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-09-24T04:48:49Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:49Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache [2025-09-24T04:49:30Z TRACE ambient_ci::vdrive] extraction OK [2025-09-24T04:49:30Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:30Z DEBUG ambient_ci::plan] RUN: Action Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-09-24T04:49:30Z DEBUG ambient_ci::action] Plan::execute: plan=Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-09-24T04:49:30Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"] cwd=/workspace/src (exists? true) 2621441 4 drwxr-xr-x 6 root root 4096 Sep 24 04:48 /workspace 2621654 4 drwxr-xr-x 3 root root 4096 Sep 24 04:48 /workspace/deps 2621655 0 -rw-r--r-- 1 root root 0 Sep 23 09:03 /workspace/deps/.package-cache-mutate 2621658 4 drwxr-xr-x 5 root root 4096 Sep 23 09:03 /workspace/deps/registry 2621656 116 -rw-r--r-- 1 root root 118784 Sep 24 04:48 /workspace/deps/.global-cache 2621657 0 -rw-r--r-- 1 root root 0 Sep 23 09:03 /workspace/deps/.package-cache 2621443 4 drwxr-xr-x 10 root root 4096 Sep 24 04:48 /workspace/src 2621520 4 -rw-r--r-- 1 root root 1716 Sep 24 04:48 /workspace/src/Cargo.toml 2621642 4 -rw-r--r-- 1 root root 1188 Sep 24 04:48 /workspace/src/CONTRIBUTING.md 2621502 40 -rw-r--r-- 1 root root 37288 Sep 24 04:48 /workspace/src/NEWS.md 2621517 4 -rw-r--r-- 1 root root 802 Sep 24 04:48 /workspace/src/build.rs 2621523 4 drwxr-xr-x 8 root root 4096 Sep 24 04:48 /workspace/src/.git 2621644 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/doc 2621450 4 drwxr-xr-x 4 root root 4096 Sep 24 04:48 /workspace/src/src 2621516 8 -rw-r--r-- 1 root root 4796 Sep 24 04:48 /workspace/src/README.md 2621447 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/.ambient 2621496 4 -rw-r--r-- 1 root root 386 Sep 24 04:48 /workspace/src/cibtool.1 2621515 4 -rw-r--r-- 1 root root 732 Sep 24 04:48 /workspace/src/ci-broker.yaml 2621445 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/.radicle 2621503 4 drwxr-xr-x 3 root root 4096 Sep 24 04:48 /workspace/src/debian 2621501 4 -rw-r--r-- 1 root root 10 Sep 24 04:48 /workspace/src/.envrc 2621643 100 -rw-r--r-- 1 root root 98580 Sep 24 04:48 /workspace/src/Cargo.lock 2621639 12 -rw-r--r-- 1 root root 9723 Sep 24 04:48 /workspace/src/LICENSE-APACHE 2621519 4 -rw-r--r-- 1 root root 44 Sep 24 04:48 /workspace/src/.gitignore 2621521 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/tests 2621641 8 -rw-r--r-- 1 root root 6528 Sep 24 04:48 /workspace/src/flake.lock 2621518 8 -rw-r--r-- 1 root root 5951 Sep 24 04:48 /workspace/src/flake.nix 2621495 92 -rw-r--r-- 1 root root 92971 Sep 24 04:48 /workspace/src/ci-broker.md 2621444 4 -rw-r--r-- 1 root root 440 Sep 24 04:48 /workspace/src/cib.1 2621500 4 -rw-r--r-- 1 root root 257 Sep 24 04:48 /workspace/src/ci-broker.subplot 2621449 4 -rw-r--r-- 1 root root 1079 Sep 24 04:48 /workspace/src/LICENSE-MIT 2621640 4 -rw-r--r-- 1 root root 334 Sep 24 04:48 /workspace/src/Makefile 2621497 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/.cargo 2621442 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/artifacts 2647687 4 drwxr-xr-x 6 root root 4096 Sep 23 09:13 /workspace/cache 2656039 4 -rw-r--r-- 1 root root 218 Sep 23 09:04 /workspace/cache/.rustdoc_fingerprint.json 2660143 4 drwxr-xr-x 12 root root 4096 Sep 23 09:04 /workspace/cache/doc 2647689 4 drwxr-xr-x 7 root root 4096 Sep 23 09:13 /workspace/cache/debug 2647688 4 drwxr-xr-x 2 root root 4096 Sep 23 09:03 /workspace/cache/tmp 2660142 4 -rw-r--r-- 1 root root 1038 Sep 24 04:48 /workspace/cache/.rustc_info.json 2656040 4 drwxr-xr-x 7 root root 4096 Sep 23 09:15 /workspace/cache/release [2025-09-24T04:49:31Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:31Z DEBUG ambient_ci::plan] RUN: Action CargoFmt [2025-09-24T04:49:31Z DEBUG ambient_ci::action] Plan::execute: plan=CargoFmt [2025-09-24T04:49:31Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["cargo", "--version"] cwd=/workspace/src (exists? true) cargo 1.88.0 (873a06493 2025-05-10) SPAWN: argv=["cargo", "clippy", "--version"] cwd=/workspace/src (exists? true) clippy 0.1.88 (6b00bc3880 2025-06-23) SPAWN: argv=["rustc", "--version"] cwd=/workspace/src (exists? true) rustc 1.88.0 (6b00bc388 2025-06-23) SPAWN: argv=["cargo", "fmt", "--check"] cwd=/workspace/src (exists? true) [2025-09-24T04:49:34Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:34Z DEBUG ambient_ci::plan] RUN: Action CargoClippy [2025-09-24T04:49:34Z DEBUG ambient_ci::action] Plan::execute: plan=CargoClippy [2025-09-24T04:49:34Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["cargo", "--version"] cwd=/workspace/src (exists? true) cargo 1.88.0 (873a06493 2025-05-10) SPAWN: argv=["cargo", "clippy", "--version"] cwd=/workspace/src (exists? true) clippy 0.1.88 (6b00bc3880 2025-06-23) SPAWN: argv=["rustc", "--version"] cwd=/workspace/src (exists? true) rustc 1.88.0 (6b00bc388 2025-06-23) SPAWN: argv=["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"] cwd=/workspace/src (exists? true) Compiling radicle-ci-broker v0.20.1 (/workspace/src) Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.10s [2025-09-24T04:49:39Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:39Z DEBUG ambient_ci::plan] RUN: Action Shell { shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n", } [2025-09-24T04:49:39Z DEBUG ambient_ci::action] Plan::execute: plan=Shell { shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n", } [2025-09-24T04:49:39Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["/bin/bash", "-c", "set -xeuo pipefail\nexport CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n\n"] cwd=/workspace/src (exists? true) + export CARGO_TARGET_DIR=/workspace/cache + CARGO_TARGET_DIR=/workspace/cache + export CARGO_HOME=/workspace/deps + CARGO_HOME=/workspace/deps + export HOME=/root + HOME=/root + export PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + rad --help + cargo doc --workspace --no-deps Compiling radicle-ci-broker v0.20.1 (/workspace/src) Documenting radicle-ci-broker v0.20.1 (/workspace/src) warning: unresolved link to `RunningProcess` --> src/adapter.rs:357:44 | 357 | /// Error from [`TimeoutCommand`] or [`RunningProcess`]. | ^^^^^^^^^^^^^^ no item named `RunningProcess` in scope | = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default warning: unresolved link to `RunningProcess` --> src/timeoutcmd.rs:74:24 | 74 | /// output. See also [`RunningProcess`]. | ^^^^^^^^^^^^^^ no item named `RunningProcess` in scope | = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` warning: `radicle-ci-broker` (lib doc) generated 2 warnings Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.14s Generated /workspace/cache/doc/radicle_ci_broker/index.html and 4 other files + cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2 Compiling radicle-ci-broker v0.20.1 (/workspace/src) Finished `test` profile [unoptimized + debuginfo] target(s) in 16.26s Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_ci_broker-3a652a7f49bdf1f1) running 86 tests test adapter::test::adapter_does_not_exist ... ok test adapter::test::adapter_ends_ok_before_first_message ... ok test adapter::test::adapter_ends_ok_before_second_message ... ok test adapter::test::adapter_exits_nonzero ... ok test adapter::test::adapter_first_message_isnt_triggered ... ok test adapter::test::adapter_has_bad_interpreter ... ok test adapter::test::adapter_is_killed_before_any_messages ... ok test adapter::test::adapter_is_killed_after_second_message ... ok test adapter::test::adapter_is_killed_before_first_message ... ok test adapter::test::adapter_is_not_executable ... ok test adapter::test::adapter_outputs_too_many_messages ... ok test adapter::test::adapter_produces_as_bad_message ... ok test adapter::test::adapter_reports_failure ... ok test adapter::test::adapter_reports_success ... ok test broker::test::adapter_fails ... ok test broker::test::executes_adapter ... ok test ci_event::test::branch_created ... ok test ci_event::test::branch_deleted ... ok test ci_event::test::nothing_updated ... ok test ci_event::test::branch_updated ... ok test ci_event::test::patch_created ... ok test ci_event::test::skipped ... ok test ci_event::test::patch_updated ... ok test ci_event::test_parsed_ref::branch ... ok test ci_event::test_parsed_ref::patch ... ok test config::test::parse_config_yaml ... ok test config::test::parse_config_yaml_without_max_run_time ... ok test filter::test::allows_all_for_default_repository ... ok test filter::test::allows_all_for_main_branch ... ok test filter::test::allows_all_for_right_node ... ok test filter::test::allows_any_event ... ok test filter::test::allows_branch_creation ... ok test filter::test::allows_branch_deletion ... ok test filter::test::allows_branch_update ... ok test filter::test::allows_if_all_allow ... ok test filter::test::allows_if_any_allows ... ok test filter::test::allows_no_event ... ok test filter::test::allows_none_for_wrong_node ... ok test filter::test::allows_opposite ... ok test filter::test::allows_patch_creation ... ok test filter::test::allows_patch_update ... ok test filter::test::allows_shutdown ... ok test filter::test::allows_specific_patch ... ok test filter::test::allows_wanted_tag ... ok test filter::test::deserialize_yaml_nested_not ... ok test filter::test::doesnt_allow_any_for_other_branch ... ok test filter::test::doesnt_allow_any_for_other_repository ... ok test filter::test::doesnt_allow_unexpected_tag ... ok test filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_prefix ... ok test filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_suffix ... ok test filter::test::doesnt_allows_other_patch ... ok test filter::test::only_allows_branch_creation ... ok test filter::test::only_allows_branch_deletion ... ok test filter::test::only_allows_branch_update ... ok test filter::test::only_allows_patch_creation ... ok test filter::test::only_allows_patch_update ... ok test ci_event::test_parsed_ref::tag ... ok test filter::test::yaml_roundtrip ... ok test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok test msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok test refs::test::creates_patch_from_str ... ok test refs::test::extracts_branch_namespaced_branch ... ok test msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok test refs::test::namespaced_branch_from_plain ... ok test refs::test::plain_branch_name ... ok test refs::test::qualified_branch_name_from_plain ... ok test refs::test::ref_string_from_plain_branch_name ... ok test run::test::serialize_run_state ... ok test sensitive::test_sensitive::debugged ... ok test sensitive::test_sensitive::deser ... ok test sensitive::test_sensitive::displayed ... ok test sensitive::test_sensitive::ser ... ok test timeoutcmd::tests::bin_false ... ok test timeoutcmd::tests::bin_true ... ok test timeoutcmd::tests::hello_world ... ok test timeoutcmd::tests::hello_world_to_stderr ... ok test timeoutcmd::tests::kill ... ok test timeoutcmd::tests::kill_stderr ... ok test timeoutcmd::tests::pipe_through_cat ... ok test timeoutcmd::tests::sleep_1 ... ok test timeoutcmd::tests::sleep_for_too_long ... ok test timeoutcmd::tests::yes_to_stderr ... ok test timeoutcmd::tests::sleep_for_too_long_while_reading_with_realtimelines ... ok test timeoutcmd::tests::yes_to_stdout ... ok test timeoutcmd::tests::yes_to_stdout_while_reading_with_realtimelines ... ok test result: ok. 86 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 15.95s Running unittests src/bin/cib.rs (/workspace/cache/debug/deps/cib-e9ba13027b83a468) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/cibtool.rs (/workspace/cache/debug/deps/cibtool-c79467f98bd685ea) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/default_branch.rs (/workspace/cache/debug/deps/default_branch-cb3df330a1ceebc0) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/synthetic-events.rs (/workspace/cache/debug/deps/synthetic_events-e28c67836b0797bd) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/subplot.rs (/workspace/cache/debug/deps/subplot-6af5304012d09743) running 71 tests test adapter_with_url_runs_successfully ... ok test add_information_about_run_that_s_finished_in_failure_to_database ... ok test adapter_can_provide_url_for_info_on_run ... ok test add_information_about_run_that_s_finished_successfully_to_database ... ok test add_information_about_run_that_s_running_to_database ... ok test allows_setting_minimum_log_level ... ok test add_information_about_triggered_run_to_database ... ok test can_add_a_branch_creation_event_to_queue ... ok test can_add_a_branch_deletion_event_to_queue ... ok test can_add_a_branch_update_event_to_queue ... ok test can_add_a_patch_creation_event_to_queue ... ok test can_add_a_patch_update_event_to_queue ... ok test can_add_shutdown_event_to_queue ... ok test can_output_trigger_message_for_a_ci_run ... ok test can_remove_all_queued_events ... ok test can_trigger_a_ci_run ... ok test convert_recorded_node_events_into_ci_events ... ok test count_in_a_single_process ... ok test create_a_repository ... ok test don_t_insert_event_for_non_existent_repository ... ok test dummy_adapter_runs_successfully ... ok test event_synthesizer_terminates_after_first_connection ... ok test events_can_be_queued_and_removed_from_queue ... ok test extract_cib_log_from_journald_and_pretty_print ... ok test fails_run_if_building_trigger_fails__but_does_not_crash ... ok test count_in_concurrent_processes ... ok test filter_predicate_allow ... ok test filter_predicate_and ... ok test filter_predicate_branch ... ok test filter_predicate_branchcreated ... ok test filter_predicate_branchdeleted ... ok test filter_predicate_branchupdated ... ok test filter_predicate_deny ... ok test filter_predicate_defaultbranch ... ok test filter_predicate_hasfile ... ok test filter_predicate_not ... ok test filter_predicate_node ... ok test filter_predicate_or ... ok test filter_predicate_tag ... ok test filter_predicate_repository ... ok test filter_recorded_ci_events ... ok test gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file ... ok test gives_helpful_error_message_if_node_socket_can_t_be_found ... ok test handles_adapter_failing_on_a_successful_run ... ok test handles_adapter_failing_on_a_failed_run ... ok test insert_events_into_queue ... ok test logs_adapter_stderr_output ... ok test logs_start_and_successful_end ... ok test logs_termination_due_to_error ... ok test process_queued_events ... ok test produces_a_json_status_file ... ok test produces_a_report_page_upon_request ... ok test queue_a_node_event_for_processing ... ok test record_node_events ... ok test refuses_config_with_an_unknown_field ... ok test remove_information_about_a_run_from_the_database ... ok test reports_it_version ... ok test runs_adapter_on_each_type_of_event ... ok test runs_adapter_with_configuration ... ok test runs_adapter_without_a_report_directory ... ok test insert_many_events_into_queue ... ok test set_up_a_node ... ok test shows_adapter_specification ... ok test shows_json_config_as_json ... ok test shows_yaml_config_as_json ... ok test shuts_down_when_requested ... ok test runs_adapters_for_all_matching_triggers ... ok test smoke_test__runs_adapter ... ok test stops_if_the_node_connection_breaks ... ok test we_can_run_rad ... ok test update_and_show_information_about_run_to_running ... ok test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 134.81s Doc-tests radicle_ci_broker running 3 tests test src/msg.rs - msg::RunId (line 49) ... ok test src/pull_queue.rs - pull_queue::PullQueue (line 12) ... ok test src/timeoutcmd.rs - timeoutcmd (line 21) ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.74s + subplot docgen ci-broker.subplot -o doc/ci-broker.html [32m INFO[0m Starting Subplot [33m WARN[0m Embedded file is not used by any scenario: "broker-with-concurrent-adapters.yaml" [31mERROR[0m Document has 1 warnings. [2025-09-24T04:52:35Z ERROR ambient_ci::plan] ERROR: Action failed: failed to execute /bin/bash [2025-09-24T04:52:35Z ERROR ambient_ci::plan] caused by: command failed: "/bin/bash": exit code 1 ERROR: failed to execute /bin/bash caused by: command failed: "/bin/bash": exit code 1 EXIT CODE: 1 [2025-09-24T04:52:37Z INFO ambient] ambient ends successfully
{ "request": "trigger", "version": 1, "event_type": "patch", "repository": { "id": "rad:zwTxygwuz5LDGBq255RA2CbNGrz8", "name": "radicle-ci-broker", "description": "Radicle CI broker", "private": false, "default_branch": "main", "delegates": [ "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV", "did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT" ] }, "action": "Created", "patch": { "id": "9c75259b892d5fe0ca29ec2b50ee07dfbc8dd4af", "author": { "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV", "alias": "liw" }, "title": "add all filters to config file so we verify they can be parsed", "state": { "status": "open", "conflicts": [] }, "before": "aa70e645b36605db315cc012980e20571c9bb02f", "after": "acd3dd068ef2ca0d1f6f69beaf5b82cb99db0a8a", "commits": [ "acd3dd068ef2ca0d1f6f69beaf5b82cb99db0a8a", "eb4d4a33e21b1e3f4f582f182215908d767351df", "a2dec1a5b3ab5b34cea16c07b632023d9ce535fc" ], "target": "aa70e645b36605db315cc012980e20571c9bb02f", "labels": [], "assignees": [], "revisions": [ { "id": "9c75259b892d5fe0ca29ec2b50ee07dfbc8dd4af", "author": { "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV", "alias": "liw" }, "description": "fix: add missing event filters for tag events\n\nAdd event filters TagCreated, TagUpdated, and TagDeleted. These were\nsupposed to already exist, but were never committed. They're in the\ndocumentation, though, so it's quite surprising that they don't work.\n\n\ntest: add scenario that uses all event filters in config file\n\nThis makes it more obvious if we miss support for a filter.", "base": "aa70e645b36605db315cc012980e20571c9bb02f", "oid": "acd3dd068ef2ca0d1f6f69beaf5b82cb99db0a8a", "timestamp": 1758689297 } ] } }
[2025-09-24T04:48:19Z INFO ambient] ambient starts [2025-09-24T04:48:19Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists [2025-09-24T04:48:19Z DEBUG ambient] complete configuration: Config { tmpdir: "/srv/tmp", image_store: "/home/_rad/.local/state/ambient-ci/images", projects: "/home/_rad/ambient-projects.yaml", state: "/srv/ambient-state", rsync_target: None, rsync_target_base: None, rsync_target_map: None, dput_target: None, executor: Some( "/usr/bin/ambient-execute-plan", ), artifacts_max_size: Byte( 10000000000, ), cache_max_size: Byte( 50000000000, ), qemu: QemuConfig { cpus: 4, memory: Byte( 8000000000, ), kvm_binary: "/usr/bin/kvm", ovmf_vars_file: "/usr/share/ovmf/OVMF.fd", ovmf_code_file: "/usr/share/ovmf/OVMF.fd", }, } [2025-09-24T04:48:19Z DEBUG ambient] configuration: Config { tmpdir: "/srv/tmp", image_store: "/home/_rad/.local/state/ambient-ci/images", projects: "/home/_rad/ambient-projects.yaml", state: "/srv/ambient-state", rsync_target: None, rsync_target_base: None, rsync_target_map: None, dput_target: None, executor: Some( "/usr/bin/ambient-execute-plan", ), artifacts_max_size: Byte( 10000000000, ), cache_max_size: Byte( 50000000000, ), qemu: QemuConfig { cpus: 4, memory: Byte( 8000000000, ), kvm_binary: "/usr/bin/kvm", ovmf_vars_file: "/usr/share/ovmf/OVMF.fd", ovmf_code_file: "/usr/share/ovmf/OVMF.fd", }, } [2025-09-24T04:48:19Z DEBUG ambient_ci::project] load project state from /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/meta.yaml [2025-09-24T04:48:19Z DEBUG ambient_ci::run] latest commit: "aa70e645b36605db315cc012980e20571c9bb02f" [2025-09-24T04:48:19Z DEBUG ambient_ci::run] is a git repository [2025-09-24T04:48:19Z DEBUG ambient_ci::run] git repository is clean [2025-09-24T04:48:19Z DEBUG ambient_ci::run] current (HEAD) commit: acd3dd068ef2ca0d1f6f69beaf5b82cb99db0a8a [2025-09-24T04:48:19Z DEBUG ambient_ci::run] no dry run requested [2025-09-24T04:48:19Z DEBUG ambient_ci::run] forced run requested [2025-09-24T04:48:19Z DEBUG ambient_ci::run] run? true [2025-09-24T04:48:19Z INFO ambient_ci::run] project rad:zwTxygwuz5LDGBq255RA2CbNGrz8: running CI [2025-09-24T04:48:19Z DEBUG ambient_ci::run] Executing pre-plan steps [2025-09-24T04:48:19Z DEBUG ambient_ci::plan] RUN: Action CargoFetch { sourcedir: "/tmp/.tmpSQwmct/src", } [2025-09-24T04:48:19Z DEBUG ambient_ci::action] Plan::execute: plan=CargoFetch { sourcedir: "/tmp/.tmpSQwmct/src", } [2025-09-24T04:48:19Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_TARGET_DIR": "/srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/cache", "CARGO_HOME": "/srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/dependencies", "PATH": "/root/.cargo/bin:/bin:/home/_rad/.radicle/bin:/home/_rad/.cargo/bin", }, source_dir: "/tmp/.tmpSQwmct/src", } SPAWN: argv=["cargo", "--version"] cwd=/tmp/.tmpSQwmct/src (exists? true) cargo 1.90.0 (840b83a10 2025-07-30) SPAWN: argv=["cargo", "clippy", "--version"] cwd=/tmp/.tmpSQwmct/src (exists? true) clippy 0.1.90 (1159e78c47 2025-09-14) SPAWN: argv=["rustc", "--version"] cwd=/tmp/.tmpSQwmct/src (exists? true) rustc 1.90.0 (1159e78c4 2025-09-14) SPAWN: argv=["cargo", "fetch"] cwd=/tmp/.tmpSQwmct/src (exists? true) [2025-09-24T04:48:20Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:20Z DEBUG ambient_ci::plan] All actions were performed successfully [2025-09-24T04:48:20Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpx75tdM/src.tar [2025-09-24T04:48:20Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpx75tdM/deps.tar [2025-09-24T04:48:27Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan" [2025-09-24T04:48:27Z DEBUG ambient_ci::run] create_executor_vdrive: plan=RunnablePlan { steps: [ Mkdir { pathname: "/workspace", }, Mkdir { pathname: "/workspace/artifacts", }, TarExtract { archive: "/dev/vdc", directory: "/workspace/src", }, TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", }, TarExtract { archive: "/dev/vde", directory: "/workspace/cache", }, Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], }, CargoFmt, CargoClippy, Shell { shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n", }, Custom( Custom { name: "dch", args: { "debfullname": String("Lars Wirzenius"), "debemail": String("liw@liw.fi"), }, }, ), Deb, TarCreate { archive: "/dev/vde", directory: "/workspace/cache", }, TarCreate { archive: "/dev/vdd", directory: "/workspace/artifacts", }, ], executor_drive: Some( "/dev/vdb", ), source_drive: Some( "/dev/vdc", ), artifact_drive: Some( "/dev/vdd", ), cache_drive: Some( "/dev/vde", ), deps_drive: Some( "/dev/vdf", ), workspace_dir: Some( "/workspace", ), source_dir: Some( "/workspace/src", ), deps_dir: Some( "/workspace/deps", ), cache_dir: Some( "/workspace/cache", ), artifacts_dir: Some( "/workspace/artifacts", ), } [2025-09-24T04:48:27Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan [2025-09-24T04:48:27Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /srv/tmp/.tmpx75tdM/ambient-execute-plan/run-ci [2025-09-24T04:48:27Z DEBUG ambient_ci::run] copy OK: true [2025-09-24T04:48:27Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpx75tdM/executor.tar [2025-09-24T04:48:39Z DEBUG ambient_ci::project] removing run log file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-09-24T04:48:39Z DEBUG ambient_ci::project] statedir is /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8, exists? true [2025-09-24T04:48:39Z DEBUG ambient_ci::project] creating run log file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-09-24T04:48:39Z DEBUG ambient_ci::project] created run log file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log OK [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient" [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1" [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] with_runcmd called: "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n echo \"EXIT CODE: 0\"\nelse\n echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n" [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff" [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] LocalDataStoreBuilder: LocalDataStoreBuilder { hostname: Some( "ambient", ), network: false, bootcmd: [], runcmd: [ "echo xyzzy > /dev/ttyS1", "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n echo \"EXIT CODE: 0\"\nelse\n echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n", "poweroff", ], } [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu] run QEMU [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu_utils] qemu-img create /srv/tmp/.tmpUwvqkv/.tmp1lrKLx/vm.qcow2 backing on /home/_rad/ambient.qcow2 [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu] create cloud-init ISO file [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] LocalDataStore: LocalDataStore { hostname: "ambient", network: false, bootcmd: [], runcmd: [ "echo xyzzy > /dev/ttyS1", "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n echo \"EXIT CODE: 0\"\nelse\n echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n", "poweroff", ], } [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpr0u9ja/meta-data [2025-09-24T04:48:39Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpr0u9ja/user-data [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu] set console log file to /srv/tmp/.tmpUwvqkv/.tmp1lrKLx/console.log [2025-09-24T04:48:39Z DEBUG ambient_ci::util] create file /srv/tmp/.tmpUwvqkv/.tmp1lrKLx/console.log [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu] set run file to /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-09-24T04:48:39Z DEBUG ambient_ci::util] create file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-09-24T04:48:39Z DEBUG ambient_ci::qemu] run QEMU: QemuArgs { args: [ "-m", "7629", "-smp", "cpus=4", "-cpu", "kvm64", "-machine", "type=q35,accel=kvm,usb=off", "-uuid", "a85c9de7-edc0-4e54-bead-112e5733582c", "-boot", "strict=on", "-name", "ambient-ci-vm", "-rtc", "base=utc,driftfix=slew", "-display", "none", "-device", "virtio-rng-pci", "-serial", "file:/srv/tmp/.tmpUwvqkv/.tmp1lrKLx/console.log", "-serial", "file:/srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log", "-drive", "if=pflash,format=raw,unit=0,file=/usr/share/ovmf/OVMF.fd,readonly=on", "-drive", "if=pflash,format=raw,unit=1,file=/srv/tmp/.tmpUwvqkv/.tmp1lrKLx/vars.fd", "-drive", "format=qcow2,if=virtio,file=/srv/tmp/.tmpUwvqkv/.tmp1lrKLx/vm.qcow2", "-drive", "format=raw,if=virtio,file=/srv/tmp/.tmpx75tdM/executor.tar,readonly=on", "-cdrom", "/srv/tmp/.tmpUwvqkv/.tmp1lrKLx/cloud_init.iso", "-drive", "format=raw,if=virtio,file=/srv/tmp/.tmpx75tdM/src.tar,readonly=on", "-drive", "format=raw,if=virtio,file=/srv/tmp/.tmpx75tdM/artifacts.tar", "-drive", "format=raw,if=virtio,file=/srv/tmp/.tmpx75tdM/cache.tar", "-drive", "format=raw,if=virtio,file=/srv/tmp/.tmpx75tdM/deps.tar,readonly=on", "-nodefaults", "-no-user-config", ], } [2025-09-24T04:52:36Z DEBUG ambient_ci::qemu] QEMU finished OK [2025-09-24T04:52:36Z DEBUG ambient_ci::qemu] run log: --------------------========== [2025-09-24T04:48:46Z TRACE ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z DEBUG ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z INFO ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z WARN ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts [2025-09-24T04:48:46Z ERROR ambient_execute_plan] ambient-execute-plan version 0.7.0@2e86bbe starts RunnablePlan::from_file: filename=plan.yaml steps: - action: mkdir pathname: /workspace - action: mkdir pathname: /workspace/artifacts - action: tar_extract archive: /dev/vdc directory: /workspace/src - action: tar_extract archive: /dev/vdf directory: /workspace/deps - action: tar_extract archive: /dev/vde directory: /workspace/cache - action: spawn argv: - find - /workspace - -maxdepth - '2' - -ls - action: cargo_fmt - action: cargo_clippy - action: shell shell: | export CARGO_TARGET_DIR=/workspace/cache export CARGO_HOME=/workspace/deps export HOME=/root export PATH="/root/.cargo/bin:/root/.radicle/bin:$PATH" # Check that `rad` is there. rad --help >/dev/null || (echo rad is not there; exit 1) cargo doc --workspace --no-deps # FIXME: We can't run upgrade tests from older versions because # Ambient only fetches dependencies for the current version. # Thus, we can't build the old versions. This is an Ambient # problem that we can't fix here. So we skip the upgrade tests. cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2 subplot docgen ci-broker.subplot -o doc/ci-broker.html subplot docgen doc/userguide.subplot -o doc/userguide.html make -C doc cp doc/*.html /workspace/artifacts/. - action: custom name: dch args: debfullname: Lars Wirzenius debemail: liw@liw.fi - action: deb - action: tar_create archive: /dev/vde directory: /workspace/cache - action: tar_create archive: /dev/vdd directory: /workspace/artifacts executor_drive: /dev/vdb source_drive: /dev/vdc artifact_drive: /dev/vdd cache_drive: /dev/vde deps_drive: /dev/vdf workspace_dir: /workspace source_dir: /workspace/src deps_dir: /workspace/deps cache_dir: /workspace/cache artifacts_dir: /workspace/artifacts [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace/artifacts", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace/artifacts", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src [2025-09-24T04:48:46Z TRACE ambient_ci::vdrive] extraction OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:46Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-09-24T04:48:46Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:46Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps [2025-09-24T04:48:49Z TRACE ambient_ci::vdrive] extraction OK [2025-09-24T04:48:49Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:48:49Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-09-24T04:48:49Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-09-24T04:48:49Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-09-24T04:48:49Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache [2025-09-24T04:49:30Z TRACE ambient_ci::vdrive] extraction OK [2025-09-24T04:49:30Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:30Z DEBUG ambient_ci::plan] RUN: Action Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-09-24T04:49:30Z DEBUG ambient_ci::action] Plan::execute: plan=Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-09-24T04:49:30Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"] cwd=/workspace/src (exists? true) 2621441 4 drwxr-xr-x 6 root root 4096 Sep 24 04:48 /workspace 2621654 4 drwxr-xr-x 3 root root 4096 Sep 24 04:48 /workspace/deps 2621655 0 -rw-r--r-- 1 root root 0 Sep 23 09:03 /workspace/deps/.package-cache-mutate 2621658 4 drwxr-xr-x 5 root root 4096 Sep 23 09:03 /workspace/deps/registry 2621656 116 -rw-r--r-- 1 root root 118784 Sep 24 04:48 /workspace/deps/.global-cache 2621657 0 -rw-r--r-- 1 root root 0 Sep 23 09:03 /workspace/deps/.package-cache 2621443 4 drwxr-xr-x 10 root root 4096 Sep 24 04:48 /workspace/src 2621520 4 -rw-r--r-- 1 root root 1716 Sep 24 04:48 /workspace/src/Cargo.toml 2621642 4 -rw-r--r-- 1 root root 1188 Sep 24 04:48 /workspace/src/CONTRIBUTING.md 2621502 40 -rw-r--r-- 1 root root 37288 Sep 24 04:48 /workspace/src/NEWS.md 2621517 4 -rw-r--r-- 1 root root 802 Sep 24 04:48 /workspace/src/build.rs 2621523 4 drwxr-xr-x 8 root root 4096 Sep 24 04:48 /workspace/src/.git 2621644 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/doc 2621450 4 drwxr-xr-x 4 root root 4096 Sep 24 04:48 /workspace/src/src 2621516 8 -rw-r--r-- 1 root root 4796 Sep 24 04:48 /workspace/src/README.md 2621447 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/.ambient 2621496 4 -rw-r--r-- 1 root root 386 Sep 24 04:48 /workspace/src/cibtool.1 2621515 4 -rw-r--r-- 1 root root 732 Sep 24 04:48 /workspace/src/ci-broker.yaml 2621445 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/.radicle 2621503 4 drwxr-xr-x 3 root root 4096 Sep 24 04:48 /workspace/src/debian 2621501 4 -rw-r--r-- 1 root root 10 Sep 24 04:48 /workspace/src/.envrc 2621643 100 -rw-r--r-- 1 root root 98580 Sep 24 04:48 /workspace/src/Cargo.lock 2621639 12 -rw-r--r-- 1 root root 9723 Sep 24 04:48 /workspace/src/LICENSE-APACHE 2621519 4 -rw-r--r-- 1 root root 44 Sep 24 04:48 /workspace/src/.gitignore 2621521 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/tests 2621641 8 -rw-r--r-- 1 root root 6528 Sep 24 04:48 /workspace/src/flake.lock 2621518 8 -rw-r--r-- 1 root root 5951 Sep 24 04:48 /workspace/src/flake.nix 2621495 92 -rw-r--r-- 1 root root 92971 Sep 24 04:48 /workspace/src/ci-broker.md 2621444 4 -rw-r--r-- 1 root root 440 Sep 24 04:48 /workspace/src/cib.1 2621500 4 -rw-r--r-- 1 root root 257 Sep 24 04:48 /workspace/src/ci-broker.subplot 2621449 4 -rw-r--r-- 1 root root 1079 Sep 24 04:48 /workspace/src/LICENSE-MIT 2621640 4 -rw-r--r-- 1 root root 334 Sep 24 04:48 /workspace/src/Makefile 2621497 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/src/.cargo 2621442 4 drwxr-xr-x 2 root root 4096 Sep 24 04:48 /workspace/artifacts 2647687 4 drwxr-xr-x 6 root root 4096 Sep 23 09:13 /workspace/cache 2656039 4 -rw-r--r-- 1 root root 218 Sep 23 09:04 /workspace/cache/.rustdoc_fingerprint.json 2660143 4 drwxr-xr-x 12 root root 4096 Sep 23 09:04 /workspace/cache/doc 2647689 4 drwxr-xr-x 7 root root 4096 Sep 23 09:13 /workspace/cache/debug 2647688 4 drwxr-xr-x 2 root root 4096 Sep 23 09:03 /workspace/cache/tmp 2660142 4 -rw-r--r-- 1 root root 1038 Sep 24 04:48 /workspace/cache/.rustc_info.json 2656040 4 drwxr-xr-x 7 root root 4096 Sep 23 09:15 /workspace/cache/release [2025-09-24T04:49:31Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:31Z DEBUG ambient_ci::plan] RUN: Action CargoFmt [2025-09-24T04:49:31Z DEBUG ambient_ci::action] Plan::execute: plan=CargoFmt [2025-09-24T04:49:31Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["cargo", "--version"] cwd=/workspace/src (exists? true) cargo 1.88.0 (873a06493 2025-05-10) SPAWN: argv=["cargo", "clippy", "--version"] cwd=/workspace/src (exists? true) clippy 0.1.88 (6b00bc3880 2025-06-23) SPAWN: argv=["rustc", "--version"] cwd=/workspace/src (exists? true) rustc 1.88.0 (6b00bc388 2025-06-23) SPAWN: argv=["cargo", "fmt", "--check"] cwd=/workspace/src (exists? true) [2025-09-24T04:49:34Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:34Z DEBUG ambient_ci::plan] RUN: Action CargoClippy [2025-09-24T04:49:34Z DEBUG ambient_ci::action] Plan::execute: plan=CargoClippy [2025-09-24T04:49:34Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["cargo", "--version"] cwd=/workspace/src (exists? true) cargo 1.88.0 (873a06493 2025-05-10) SPAWN: argv=["cargo", "clippy", "--version"] cwd=/workspace/src (exists? true) clippy 0.1.88 (6b00bc3880 2025-06-23) SPAWN: argv=["rustc", "--version"] cwd=/workspace/src (exists? true) rustc 1.88.0 (6b00bc388 2025-06-23) SPAWN: argv=["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"] cwd=/workspace/src (exists? true) Compiling radicle-ci-broker v0.20.1 (/workspace/src) Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.10s [2025-09-24T04:49:39Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-09-24T04:49:39Z DEBUG ambient_ci::plan] RUN: Action Shell { shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n", } [2025-09-24T04:49:39Z DEBUG ambient_ci::action] Plan::execute: plan=Shell { shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n", } [2025-09-24T04:49:39Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_HOME": "/workspace/deps", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["/bin/bash", "-c", "set -xeuo pipefail\nexport CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n\n"] cwd=/workspace/src (exists? true) + export CARGO_TARGET_DIR=/workspace/cache + CARGO_TARGET_DIR=/workspace/cache + export CARGO_HOME=/workspace/deps + CARGO_HOME=/workspace/deps + export HOME=/root + HOME=/root + export PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + rad --help + cargo doc --workspace --no-deps Compiling radicle-ci-broker v0.20.1 (/workspace/src) Documenting radicle-ci-broker v0.20.1 (/workspace/src) warning: unresolved link to `RunningProcess` --> src/adapter.rs:357:44 | 357 | /// Error from [`TimeoutCommand`] or [`RunningProcess`]. | ^^^^^^^^^^^^^^ no item named `RunningProcess` in scope | = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default warning: unresolved link to `RunningProcess` --> src/timeoutcmd.rs:74:24 | 74 | /// output. See also [`RunningProcess`]. | ^^^^^^^^^^^^^^ no item named `RunningProcess` in scope | = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` warning: `radicle-ci-broker` (lib doc) generated 2 warnings Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.14s Generated /workspace/cache/doc/radicle_ci_broker/index.html and 4 other files + cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2 Compiling radicle-ci-broker v0.20.1 (/workspace/src) Finished `test` profile [unoptimized + debuginfo] target(s) in 16.26s Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_ci_broker-3a652a7f49bdf1f1) running 86 tests test adapter::test::adapter_does_not_exist ... ok test adapter::test::adapter_ends_ok_before_first_message ... ok test adapter::test::adapter_ends_ok_before_second_message ... ok test adapter::test::adapter_exits_nonzero ... ok test adapter::test::adapter_first_message_isnt_triggered ... ok test adapter::test::adapter_has_bad_interpreter ... ok test adapter::test::adapter_is_killed_before_any_messages ... ok test adapter::test::adapter_is_killed_after_second_message ... ok test adapter::test::adapter_is_killed_before_first_message ... ok test adapter::test::adapter_is_not_executable ... ok test adapter::test::adapter_outputs_too_many_messages ... ok test adapter::test::adapter_produces_as_bad_message ... ok test adapter::test::adapter_reports_failure ... ok test adapter::test::adapter_reports_success ... ok test broker::test::adapter_fails ... ok test broker::test::executes_adapter ... ok test ci_event::test::branch_created ... ok test ci_event::test::branch_deleted ... ok test ci_event::test::nothing_updated ... ok test ci_event::test::branch_updated ... ok test ci_event::test::patch_created ... ok test ci_event::test::skipped ... ok test ci_event::test::patch_updated ... ok test ci_event::test_parsed_ref::branch ... ok test ci_event::test_parsed_ref::patch ... ok test config::test::parse_config_yaml ... ok test config::test::parse_config_yaml_without_max_run_time ... ok test filter::test::allows_all_for_default_repository ... ok test filter::test::allows_all_for_main_branch ... ok test filter::test::allows_all_for_right_node ... ok test filter::test::allows_any_event ... ok test filter::test::allows_branch_creation ... ok test filter::test::allows_branch_deletion ... ok test filter::test::allows_branch_update ... ok test filter::test::allows_if_all_allow ... ok test filter::test::allows_if_any_allows ... ok test filter::test::allows_no_event ... ok test filter::test::allows_none_for_wrong_node ... ok test filter::test::allows_opposite ... ok test filter::test::allows_patch_creation ... ok test filter::test::allows_patch_update ... ok test filter::test::allows_shutdown ... ok test filter::test::allows_specific_patch ... ok test filter::test::allows_wanted_tag ... ok test filter::test::deserialize_yaml_nested_not ... ok test filter::test::doesnt_allow_any_for_other_branch ... ok test filter::test::doesnt_allow_any_for_other_repository ... ok test filter::test::doesnt_allow_unexpected_tag ... ok test filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_prefix ... ok test filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_suffix ... ok test filter::test::doesnt_allows_other_patch ... ok test filter::test::only_allows_branch_creation ... ok test filter::test::only_allows_branch_deletion ... ok test filter::test::only_allows_branch_update ... ok test filter::test::only_allows_patch_creation ... ok test filter::test::only_allows_patch_update ... ok test ci_event::test_parsed_ref::tag ... ok test filter::test::yaml_roundtrip ... ok test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok test msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok test refs::test::creates_patch_from_str ... ok test refs::test::extracts_branch_namespaced_branch ... ok test msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok test refs::test::namespaced_branch_from_plain ... ok test refs::test::plain_branch_name ... ok test refs::test::qualified_branch_name_from_plain ... ok test refs::test::ref_string_from_plain_branch_name ... ok test run::test::serialize_run_state ... ok test sensitive::test_sensitive::debugged ... ok test sensitive::test_sensitive::deser ... ok test sensitive::test_sensitive::displayed ... ok test sensitive::test_sensitive::ser ... ok test timeoutcmd::tests::bin_false ... ok test timeoutcmd::tests::bin_true ... ok test timeoutcmd::tests::hello_world ... ok test timeoutcmd::tests::hello_world_to_stderr ... ok test timeoutcmd::tests::kill ... ok test timeoutcmd::tests::kill_stderr ... ok test timeoutcmd::tests::pipe_through_cat ... ok test timeoutcmd::tests::sleep_1 ... ok test timeoutcmd::tests::sleep_for_too_long ... ok test timeoutcmd::tests::yes_to_stderr ... ok test timeoutcmd::tests::sleep_for_too_long_while_reading_with_realtimelines ... ok test timeoutcmd::tests::yes_to_stdout ... ok test timeoutcmd::tests::yes_to_stdout_while_reading_with_realtimelines ... ok test result: ok. 86 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 15.95s Running unittests src/bin/cib.rs (/workspace/cache/debug/deps/cib-e9ba13027b83a468) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/cibtool.rs (/workspace/cache/debug/deps/cibtool-c79467f98bd685ea) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/default_branch.rs (/workspace/cache/debug/deps/default_branch-cb3df330a1ceebc0) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/synthetic-events.rs (/workspace/cache/debug/deps/synthetic_events-e28c67836b0797bd) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/subplot.rs (/workspace/cache/debug/deps/subplot-6af5304012d09743) running 71 tests test adapter_with_url_runs_successfully ... ok test add_information_about_run_that_s_finished_in_failure_to_database ... ok test adapter_can_provide_url_for_info_on_run ... ok test add_information_about_run_that_s_finished_successfully_to_database ... ok test add_information_about_run_that_s_running_to_database ... ok test allows_setting_minimum_log_level ... ok test add_information_about_triggered_run_to_database ... ok test can_add_a_branch_creation_event_to_queue ... ok test can_add_a_branch_deletion_event_to_queue ... ok test can_add_a_branch_update_event_to_queue ... ok test can_add_a_patch_creation_event_to_queue ... ok test can_add_a_patch_update_event_to_queue ... ok test can_add_shutdown_event_to_queue ... ok test can_output_trigger_message_for_a_ci_run ... ok test can_remove_all_queued_events ... ok test can_trigger_a_ci_run ... ok test convert_recorded_node_events_into_ci_events ... ok test count_in_a_single_process ... ok test create_a_repository ... ok test don_t_insert_event_for_non_existent_repository ... ok test dummy_adapter_runs_successfully ... ok test event_synthesizer_terminates_after_first_connection ... ok test events_can_be_queued_and_removed_from_queue ... ok test extract_cib_log_from_journald_and_pretty_print ... ok test fails_run_if_building_trigger_fails__but_does_not_crash ... ok test count_in_concurrent_processes ... ok test filter_predicate_allow ... ok test filter_predicate_and ... ok test filter_predicate_branch ... ok test filter_predicate_branchcreated ... ok test filter_predicate_branchdeleted ... ok test filter_predicate_branchupdated ... ok test filter_predicate_deny ... ok test filter_predicate_defaultbranch ... ok test filter_predicate_hasfile ... ok test filter_predicate_not ... ok test filter_predicate_node ... ok test filter_predicate_or ... ok test filter_predicate_tag ... ok test filter_predicate_repository ... ok test filter_recorded_ci_events ... ok test gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file ... ok test gives_helpful_error_message_if_node_socket_can_t_be_found ... ok test handles_adapter_failing_on_a_successful_run ... ok test handles_adapter_failing_on_a_failed_run ... ok test insert_events_into_queue ... ok test logs_adapter_stderr_output ... ok test logs_start_and_successful_end ... ok test logs_termination_due_to_error ... ok test process_queued_events ... ok test produces_a_json_status_file ... ok test produces_a_report_page_upon_request ... ok test queue_a_node_event_for_processing ... ok test record_node_events ... ok test refuses_config_with_an_unknown_field ... ok test remove_information_about_a_run_from_the_database ... ok test reports_it_version ... ok test runs_adapter_on_each_type_of_event ... ok test runs_adapter_with_configuration ... ok test runs_adapter_without_a_report_directory ... ok test insert_many_events_into_queue ... ok test set_up_a_node ... ok test shows_adapter_specification ... ok test shows_json_config_as_json ... ok test shows_yaml_config_as_json ... ok test shuts_down_when_requested ... ok test runs_adapters_for_all_matching_triggers ... ok test smoke_test__runs_adapter ... ok test stops_if_the_node_connection_breaks ... ok test we_can_run_rad ... ok test update_and_show_information_about_run_to_running ... ok test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 134.81s Doc-tests radicle_ci_broker running 3 tests test src/msg.rs - msg::RunId (line 49) ... ok test src/pull_queue.rs - pull_queue::PullQueue (line 12) ... ok test src/timeoutcmd.rs - timeoutcmd (line 21) ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.74s + subplot docgen ci-broker.subplot -o doc/ci-broker.html INFO Starting Subplot WARN Embedded file is not used by any scenario: "broker-with-concurrent-adapters.yaml" ERROR Document has 1 warnings. [2025-09-24T04:52:35Z ERROR ambient_ci::plan] ERROR: Action failed: failed to execute /bin/bash [2025-09-24T04:52:35Z ERROR ambient_ci::plan] caused by: command failed: "/bin/bash": exit code 1 ERROR: failed to execute /bin/bash caused by: command failed: "/bin/bash": exit code 1 EXIT CODE: 1 ==================== [2025-09-24T04:52:36Z DEBUG ambient_ci::qemu] QEMU: CI run under exit code 1 [2025-09-24T04:52:37Z DEBUG ambient_ci::run] CI run exit code from QEMU: 1 [2025-09-24T04:52:37Z DEBUG ambient_ci::project] write project state to /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/meta.yaml ERROR: CI run failed inside QEMU
<empty log>