Radicle repository id rad:zwTxygwuz5LDGBq255RA2CbNGrz8
[2025-10-07T07:30:18Z INFO ambient] ambient starts deprecated: the `cpus` field is replaced by `qemu.cpus` deprecated: the `memory` field is replaced by `qemu.memory` [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 8.6M 1 disk vdd 254:48 0 953.7M 0 disk vde 254:64 0 46.6G 0 disk vdf 254:80 0 908.4M 1 disk INFO: Extracting tar archive from /dev/vdb drwxr-xr-x _rad/_rad 0 2025-10-07 07:23 ./ -rw-r--r-- _rad/_rad 1789 2025-10-07 07:23 ./plan.yaml -rwxr-xr-x _rad/_rad 6410400 2025-10-07 07:23 ./run-ci INFO: Extracted files: 4587528 4 drwxr-xr-x 2 1001 1001 4096 Oct 7 07:23 . 4587526 4 -rw-r--r-- 1 1001 1001 1789 Oct 7 07:23 ./plan.yaml 4587527 6264 -rwxr-xr-x 1 1001 1001 6410400 Oct 7 07:23 ./run-ci INFO: Running run-ci from /dev/vdb ================================ BEGIN ================================ [2025-10-07T07:23:56Z TRACE ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z DEBUG ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z INFO ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z WARN ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z ERROR ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 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: debemail: liw@liw.fi debfullname: Lars Wirzenius - 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-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace/artifacts", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace/artifacts", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src [2025-10-07T07:23:56Z TRACE ambient_ci::vdrive] extraction OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps [2025-10-07T07:23:58Z TRACE ambient_ci::vdrive] extraction OK [2025-10-07T07:23:58Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:58Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:23:58Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:23:58Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:58Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache [2025-10-07T07:24:05Z TRACE ambient_ci::vdrive] extraction OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: plan=Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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 Oct 7 07:23 /workspace 2621588 4 drwxr-xr-x 3 root root 4096 Oct 7 07:23 /workspace/deps 2650000 0 -rw-r--r-- 1 root root 0 Jun 30 06:52 /workspace/deps/.package-cache-mutate 2621591 4 drwxr-xr-x 5 root root 4096 Mar 5 2025 /workspace/deps/registry 2621589 172 -rw-r--r-- 1 root root 176128 Oct 7 07:23 /workspace/deps/.global-cache 2621590 0 -rw-r--r-- 1 root root 0 Feb 3 2025 /workspace/deps/.package-cache 2621443 4 drwxr-xr-x 10 root root 4096 Oct 7 07:23 /workspace/src 2621450 4 -rw-r--r-- 1 root root 1716 Oct 7 07:23 /workspace/src/Cargo.toml 2621587 4 -rw-r--r-- 1 root root 1188 Oct 7 07:23 /workspace/src/CONTRIBUTING.md 2621446 40 -rw-r--r-- 1 root root 37786 Oct 7 07:23 /workspace/src/NEWS.md 2621569 4 -rw-r--r-- 1 root root 905 Oct 7 07:23 /workspace/src/test2.yaml 2621572 4 -rw-r--r-- 1 root root 802 Oct 7 07:23 /workspace/src/build.rs 2621451 4 drwxr-xr-x 8 root root 4096 Oct 7 07:23 /workspace/src/.git 2621576 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/doc 2621514 4 drwxr-xr-x 4 root root 4096 Oct 7 07:23 /workspace/src/src 2621563 8 -rw-r--r-- 1 root root 4796 Oct 7 07:23 /workspace/src/README.md 2621573 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/.ambient 2621575 4 -rw-r--r-- 1 root root 386 Oct 7 07:23 /workspace/src/cibtool.1 2621501 4 -rw-r--r-- 1 root root 732 Oct 7 07:23 /workspace/src/ci-broker.yaml 2621448 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/.radicle 2621502 4 drwxr-xr-x 3 root root 4096 Oct 7 07:23 /workspace/src/debian 2621567 4 -rw-r--r-- 1 root root 10 Oct 7 07:23 /workspace/src/.envrc 2621571 100 -rw-r--r-- 1 root root 98580 Oct 7 07:23 /workspace/src/Cargo.lock 2621566 2932 -rw-r--r-- 1 root root 3002368 Oct 7 07:23 /workspace/src/ci-broker.db 2621570 12 -rw-r--r-- 1 root root 9723 Oct 7 07:23 /workspace/src/LICENSE-APACHE 2621444 4 -rw-r--r-- 1 root root 44 Oct 7 07:23 /workspace/src/.gitignore 2621497 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/tests 2621500 8 -rw-r--r-- 1 root root 6528 Oct 7 07:23 /workspace/src/flake.lock 2621568 8 -rw-r--r-- 1 root root 5951 Oct 7 07:23 /workspace/src/flake.nix 2621565 92 -rw-r--r-- 1 root root 92634 Oct 7 07:23 /workspace/src/ci-broker.md 2621499 4 -rw-r--r-- 1 root root 440 Oct 7 07:23 /workspace/src/cib.1 2621445 4 -rw-r--r-- 1 root root 257 Oct 7 07:23 /workspace/src/ci-broker.subplot 2621564 4 -rw-r--r-- 1 root root 1079 Oct 7 07:23 /workspace/src/LICENSE-MIT 2621562 4 -rw-r--r-- 1 root root 334 Oct 7 07:23 /workspace/src/Makefile 2621447 4 -rw-r--r-- 1 root root 469 Oct 7 07:23 /workspace/src/test.yaml 2621559 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/.cargo 2621442 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/artifacts 2650001 4 drwxr-xr-x 6 root root 4096 Oct 4 05:04 /workspace/cache 2650554 4 -rw-r--r-- 1 root root 218 Aug 31 16:03 /workspace/cache/.rustdoc_fingerprint.json 2650002 4 drwxr-xr-x 12 root root 4096 Oct 7 05:58 /workspace/cache/doc 2654658 4 drwxr-xr-x 7 root root 4096 Oct 7 06:04 /workspace/cache/debug 2654657 4 drwxr-xr-x 2 root root 4096 Oct 4 04:56 /workspace/cache/tmp 2650553 4 -rw-r--r-- 1 root root 1038 Oct 7 07:13 /workspace/cache/.rustc_info.json 2650555 4 drwxr-xr-x 7 root root 4096 Oct 7 06:04 /workspace/cache/release [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action CargoFmt [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: plan=CargoFmt [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action CargoClippy [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: plan=CargoClippy [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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.21.0 (/workspace/src) Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.03s [2025-10-07T07:24:10Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:10Z 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-10-07T07:24:10Z 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-10-07T07:24:10Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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.21.0 (/workspace/src) Documenting radicle-ci-broker v0.21.0 (/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.17s 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.21.0 (/workspace/src) Finished `test` profile [unoptimized + debuginfo] target(s) in 8.73s Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_ci_broker-d66c8bec0c4e2ff8) 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_has_bad_interpreter ... ok test adapter::test::adapter_first_message_isnt_triggered ... ok test adapter::test::adapter_is_killed_after_second_message ... ok test adapter::test::adapter_is_killed_before_any_messages ... ok test adapter::test::adapter_is_killed_before_first_message ... ok test adapter::test::adapter_is_not_executable ... ok test adapter::test::adapter_produces_as_bad_message ... ok test adapter::test::adapter_outputs_too_many_messages ... ok test adapter::test::adapter_reports_success ... ok test adapter::test::adapter_reports_failure ... ok test broker::test::adapter_fails ... ok test ci_event::test::branch_created ... ok test ci_event::test::branch_deleted ... ok test ci_event::test::branch_updated ... ok test ci_event::test::nothing_updated ... ok test ci_event::test::patch_created ... ok test ci_event::test::patch_updated ... ok test ci_event::test::skipped ... ok test ci_event::test_parsed_ref::branch ... ok test ci_event::test_parsed_ref::patch ... ok test ci_event::test_parsed_ref::tag ... 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 filter::test::yaml_roundtrip ... ok test broker::test::executes_adapter ... 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_created ... ok test refs::test::creates_patch_from_str ... ok test msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok test refs::test::extracts_branch_namespaced_branch ... 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 11.79s Running unittests src/bin/cib.rs (/workspace/cache/debug/deps/cib-904bcd2fe50100c7) 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-55608878e26dc932) 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-e1c21e0388861a0f) 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-38c91210032b66ff) 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-7d0e6ae9bf70f325) 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 has been running for over 60 seconds test count_in_concurrent_processes has been running for over 60 seconds 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 count_in_concurrent_processes ... ok test fails_run_if_building_trigger_fails__but_does_not_crash ... 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_repository ... ok test filter_predicate_tag ... ok test filter_recorded_ci_events ... ok test filter_predicate_or ... 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_failed_run ... ok test handles_adapter_failing_on_a_successful_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 runs_adapters_for_all_matching_triggers ... ok test set_up_a_node ... ok test shows_adapter_specification ... ok test shows_json_config_as_json ... ok test insert_many_events_into_queue has been running for over 60 seconds test shows_yaml_config_as_json ... ok test shuts_down_when_requested ... ok test smoke_test__runs_adapter ... ok test stops_if_the_node_connection_breaks ... ok test update_and_show_information_about_run_to_running ... ok test we_can_run_rad ... ok test insert_many_events_into_queue ... ok test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 287.69s 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 3.84s + subplot docgen ci-broker.subplot -o doc/ci-broker.html [32m INFO[0m Starting Subplot [32m INFO[0m Subplot finished successfully + subplot docgen doc/userguide.subplot -o doc/userguide.html [32m INFO[0m Starting Subplot [32m INFO[0m Subplot finished successfully + make -C doc make: Entering directory '/workspace/src/doc' ./messages.sh > messages.md subplot docgen --date "Version: $(git describe --long --dirty)" architecture.subplot -o architecture.html fatal: No names found, cannot describe anything. [32m INFO[0m Starting Subplot [32m INFO[0m Subplot finished successfully pandoc --standalone --metadata title="Radicle CI overview" "overview.md" --output "overview.html" make: Leaving directory '/workspace/src/doc' + cp doc/architecture.html doc/ci-broker.html doc/overview.html doc/userguide.html /workspace/artifacts/. [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action Custom( Custom { name: "dch", args: { "debemail": String("liw@liw.fi"), "debfullname": String("Lars Wirzenius"), }, }, ) [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: plan=Custom( Custom { name: "dch", args: { "debemail": String("liw@liw.fi"), "debfullname": String("Lars Wirzenius"), }, }, ) [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } custom: source=/workspace/src custom: exe=".ambient/dch" exists=false HEAD is now at f9aad668 refactor: simplify report generation code Removing doc/architecture.html Removing doc/ci-broker.html Removing doc/messages.md Removing doc/overview.html Removing doc/userguide.html custom action "dch" exit code Some(0) [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action Deb [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: plan=Deb [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["/bin/bash", "-c", "#!/bin/bash\nset -xeuo pipefail\n\necho \"PATH at start: $PATH\"\nexport PATH=\"/root/.cargo/bin:$PATH\"\nexport CARGO_HOME=/workspace/deps\nexport DEBEMAIL=liw@liw.fi\nexport DEBFULLNAME=\"Lars Wirzenius\"\n/bin/env\n\ncommand -v cargo\ncommand -v rustc\n\ncargo --version\nrustc --version\n\n# Get name and version of source package.\nname=\"$(dpkg-parsechangelog -SSource)\"\nversion=\"$(dpkg-parsechangelog -SVersion)\"\n\n# Get upstream version: everything before the last dash.\nuv=\"$(echo \"$version\" | sed 's/-[^-]*$//')\"\n\n# Files that will be created.\narch=\"$(dpkg --print-architecture)\"\norig=\"../${name}_${uv}.orig.tar.xz\"\ndeb=\"../${name}_${version}_${arch}.deb\"\nchanges=\"../${name}_${version}_${arch}.changes\"\n\n# Create \"upstream tarball\".\ngit archive HEAD | xz >\"$orig\"\n\n# Build package.\ndpkg-buildpackage -us -uc\n\n# Dump some information to make it easier to visually verify\n# everything looks OK. Also, test the package with the lintian tool.\n\nls -l ..\nfor x in ../*.deb; do dpkg -c \"$x\"; done\n# FIXME: disabled while this prevents radicle-native-ci deb from being built.\n# lintian -i --allow-root --fail-on warning ../*.changes\n\n# Move files to artifacts directory.\nmv ../*_* /workspace/artifacts\n "] cwd=/workspace/src (exists? true) + echo 'PATH at start: /root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' PATH at start: /root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + export PATH=/root/.cargo/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + PATH=/root/.cargo/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + export CARGO_HOME=/workspace/deps + CARGO_HOME=/workspace/deps + export DEBEMAIL=liw@liw.fi + DEBEMAIL=liw@liw.fi + export 'DEBFULLNAME=Lars Wirzenius' + DEBFULLNAME='Lars Wirzenius' + /bin/env DEBFULLNAME=Lars Wirzenius CARGO_TARGET_DIR=/workspace/cache PWD=/workspace/src SYSTEMD_EXEC_PID=268 LANG=C.UTF-8 CARGO_HOME=/workspace/deps DEBEMAIL=liw@liw.fi INVOCATION_ID=0c16ea98fde844efafd9ded695b29c95 SHLVL=2 JOURNAL_STREAM=8:12899 PATH=/root/.cargo/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin OLDPWD=/ _=/bin/env + command -v cargo /root/.cargo/bin/cargo + command -v rustc /root/.cargo/bin/rustc + cargo --version cargo 1.88.0 (873a06493 2025-05-10) + rustc --version rustc 1.88.0 (6b00bc388 2025-06-23) ++ dpkg-parsechangelog -SSource + name=radicle-ci-broker ++ dpkg-parsechangelog -SVersion + version=0.21.0.ci20251007T072933-1 ++ echo 0.21.0.ci20251007T072933-1 ++ sed 's/-[^-]*$//' + uv=0.21.0.ci20251007T072933 ++ dpkg --print-architecture + arch=amd64 + orig=../radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz + deb=../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb + changes=../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes + git archive HEAD + xz + dpkg-buildpackage -us -uc [1mdpkg-buildpackage: [0m[32minfo[0m: source package radicle-ci-broker [1mdpkg-buildpackage: [0m[32minfo[0m: source version 0.21.0.ci20251007T072933-1 [1mdpkg-buildpackage: [0m[32minfo[0m: source distribution unstable [1mdpkg-buildpackage: [0m[32minfo[0m: source changed by "Lars Wirzenius" <"liw@liw.fi"> [1mdpkg-buildpackage: [0m[32minfo[0m: host architecture amd64 [1;35m dpkg-source --before-build . [0m[1;35m debian/rules clean [0mdh clean dh_auto_clean dh_clean [1;35m dpkg-source -b . [0m[1mdpkg-source: [0m[32minfo[0m: using source format '3.0 (quilt)' [1mdpkg-source: [0m[32minfo[0m: building radicle-ci-broker using existing ./radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz [1mdpkg-source: [0m[32minfo[0m: building radicle-ci-broker in radicle-ci-broker_0.21.0.ci20251007T072933-1.debian.tar.xz [1mdpkg-source: [0m[32minfo[0m: building radicle-ci-broker in radicle-ci-broker_0.21.0.ci20251007T072933-1.dsc [1;35m debian/rules build [0mdh build dh_update_autotools_config dh_autoreconf dh_auto_configure debian/rules override_dh_auto_build make[1]: Entering directory '/workspace/src' true make[1]: Leaving directory '/workspace/src' debian/rules override_dh_auto_test make[1]: Entering directory '/workspace/src' echo tests are disabled, for now tests are disabled, for now make[1]: Leaving directory '/workspace/src' create-stamp debian/debhelper-build-stamp [1;35m debian/rules binary [0mdh binary dh_testroot dh_prep debian/rules override_dh_auto_install make[1]: Entering directory '/workspace/src' cargo install --offline --locked --path=. --root=debian/radicle-ci-broker/usr --bin cib --bin cibtool Installing radicle-ci-broker v0.21.0 (/workspace/src) Compiling radicle-ci-broker v0.21.0 (/workspace/src) Finished `release` profile [optimized] target(s) in 19.33s Installing debian/radicle-ci-broker/usr/bin/cib Installing debian/radicle-ci-broker/usr/bin/cibtool Installed package `radicle-ci-broker v0.21.0 (/workspace/src)` (executables `cib`, `cibtool`) warning: be sure to add `debian/radicle-ci-broker/usr/bin` to your PATH to be able to run the installed binaries find debian -name '.crates*.*' -delete make[1]: Leaving directory '/workspace/src' dh_installdocs dh_installchangelogs dh_installman dh_lintian dh_perl dh_link dh_strip_nondeterminism dh_compress dh_fixperms dh_missing dh_strip dh_makeshlibs dh_shlibdeps [1mdpkg-shlibdeps: [0m[1;33mwarning[0m: package could avoid a useless dependency if debian/radicle-ci-broker/usr/bin/cib debian/radicle-ci-broker/usr/bin/cibtool were not linked against libm.so.6 (they use none of the library's symbols) dh_installdeb dh_gencontrol dh_md5sums dh_builddeb [1mdpkg-deb:[0m building package 'radicle-ci-broker' in '../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb'. [1mdpkg-deb:[0m building package 'radicle-ci-broker-dbgsym' in '../radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb'. [1;35m dpkg-genbuildinfo -O../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.buildinfo [0m[1;35m dpkg-genchanges -O../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes [0m[1mdpkg-genchanges: [0m[32minfo[0m: including full source code in upload [1;35m dpkg-source --after-build . [0m[1mdpkg-buildpackage: [0m[32minfo[0m: full upload (original source is included) + ls -l .. total 7160 drwxr-xr-x 2 root root 4096 Oct 7 07:29 artifacts drwxr-xr-x 6 root root 4096 Oct 4 05:04 cache drwxr-xr-x 3 root root 4096 Oct 7 07:29 deps -rw-r--r-- 1 root root 632504 Oct 7 07:29 radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb -rw-r--r-- 1 root root 2320 Oct 7 07:29 radicle-ci-broker_0.21.0.ci20251007T072933-1.debian.tar.xz -rw-r--r-- 1 root root 1078 Oct 7 07:29 radicle-ci-broker_0.21.0.ci20251007T072933-1.dsc -rw-r--r-- 1 root root 6326 Oct 7 07:30 radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.buildinfo -rw-r--r-- 1 root root 2634 Oct 7 07:30 radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes -rw-r--r-- 1 root root 6135180 Oct 7 07:30 radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb -rw-r--r-- 1 root root 523712 Oct 7 07:29 radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz drwxr-xr-x 10 root root 4096 Oct 7 07:29 src + for x in ../*.deb + dpkg -c ../radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb drwxr-xr-x root/root 0 2025-10-07 07:29 ./ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/.build-id/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/.build-id/14/ -rw-r--r-- root/root 2578016 2025-10-07 07:29 ./usr/lib/debug/.build-id/14/28a5e0bacddf7615287fe6992c74f3780b3135.debug drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/.build-id/61/ -rw-r--r-- root/root 2363640 2025-10-07 07:29 ./usr/lib/debug/.build-id/61/de2c486f164aecf1b257ffcb55a35fb9ad26f5.debug drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/doc/ lrwxrwxrwx root/root 0 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker-dbgsym -> radicle-ci-broker + for x in ../*.deb + dpkg -c ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb drwxr-xr-x root/root 0 2025-10-07 07:29 ./ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/bin/ -rwxr-xr-x root/root 10470168 2025-10-07 07:29 ./usr/bin/cib -rwxr-xr-x root/root 11149480 2025-10-07 07:29 ./usr/bin/cibtool drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/doc/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker/ -rw-r--r-- root/root 650 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker/changelog.Debian.gz -rw-r--r-- root/root 396 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker/copyright drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/lintian/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/lintian/overrides/ -rw-r--r-- root/root 120 2025-10-07 07:29 ./usr/share/lintian/overrides/radicle-ci-broker drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/man/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/man/man1/ -rw-r--r-- root/root 298 2025-10-07 07:29 ./usr/share/man/man1/cib.1.gz -rw-r--r-- root/root 277 2025-10-07 07:29 ./usr/share/man/man1/cibtool.1.gz + mv ../radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb ../radicle-ci-broker_0.21.0.ci20251007T072933-1.debian.tar.xz ../radicle-ci-broker_0.21.0.ci20251007T072933-1.dsc ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.buildinfo ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb ../radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz /workspace/artifacts [2025-10-07T07:30:03Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:30:03Z DEBUG ambient_ci::plan] RUN: Action TarCreate { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:30:03Z DEBUG ambient_ci::action] Plan::execute: plan=TarCreate { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:30:03Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder { filename: Some( "/dev/vde", ), root: Some( "/workspace/cache", ), size: None, } [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vde; exists? true [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] create archive file /dev/vde [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] directory /workspace/cache exists? true [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] add contents of /workspace/cache as . [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] calling tar_create [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] created virtual drive /dev/vde [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] RUN: Action TarCreate { archive: "/dev/vdd", directory: "/workspace/artifacts", } [2025-10-07T07:30:06Z DEBUG ambient_ci::action] Plan::execute: plan=TarCreate { archive: "/dev/vdd", directory: "/workspace/artifacts", } [2025-10-07T07:30:06Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder { filename: Some( "/dev/vdd", ), root: Some( "/workspace/artifacts", ), size: None, } [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vdd; exists? true [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] create archive file /dev/vdd [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] directory /workspace/artifacts exists? true [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] add contents of /workspace/artifacts as . [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] calling tar_create [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] created virtual drive /dev/vdd [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] All actions were performed successfully ambient-execute-plan ends EXIT CODE: 0 [2025-10-07T07:30:18Z 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": "Updated", "patch": { "id": "07b6fb5451a399c7ac6e89248a547648a89ecbad", "author": { "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV", "alias": "liw" }, "title": "refactor: simplify report generation code", "state": { "status": "open", "conflicts": [] }, "before": "c459b6763a1e0c526c9c920bda813a324f2cc5cc", "after": "f9aad668beccc978518ad048107593ad7360a6d8", "commits": [ "f9aad668beccc978518ad048107593ad7360a6d8" ], "target": "c459b6763a1e0c526c9c920bda813a324f2cc5cc", "labels": [], "assignees": [], "revisions": [ { "id": "07b6fb5451a399c7ac6e89248a547648a89ecbad", "author": { "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV", "alias": "liw" }, "description": "", "base": "c459b6763a1e0c526c9c920bda813a324f2cc5cc", "oid": "21704e074d0499423c899d929e04072e1ecaf125", "timestamp": 1759821180 }, { "id": "ea7083628947032cddceff8c19023915c834642a", "author": { "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV", "alias": "liw" }, "description": "", "base": "c459b6763a1e0c526c9c920bda813a324f2cc5cc", "oid": "f9aad668beccc978518ad048107593ad7360a6d8", "timestamp": 1759821813 } ] } }
[2025-10-07T07:23:42Z INFO ambient] ambient starts [2025-10-07T07:23:42Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists deprecated: the `cpus` field is replaced by `qemu.cpus` deprecated: the `memory` field is replaced by `qemu.memory` [2025-10-07T07:23:42Z DEBUG ambient] complete configuration: Config { tmpdir: "/home/_rad/tmp", image_store: "/home/_rad/ambient-images", projects: "/home/_rad/ambient.yaml", state: "/home/_rad/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( 1000000000, ), 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-10-07T07:23:42Z DEBUG ambient] configuration: Config { tmpdir: "/home/_rad/tmp", image_store: "/home/_rad/ambient-images", projects: "/home/_rad/ambient.yaml", state: "/home/_rad/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( 1000000000, ), 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-10-07T07:23:42Z DEBUG ambient_ci::project] load project state from /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/meta.yaml [2025-10-07T07:23:42Z DEBUG ambient_ci::run] latest commit: "21704e074d0499423c899d929e04072e1ecaf125" [2025-10-07T07:23:42Z DEBUG ambient_ci::run] is a git repository [2025-10-07T07:23:42Z DEBUG ambient_ci::run] git repository is clean [2025-10-07T07:23:42Z DEBUG ambient_ci::run] current (HEAD) commit: f9aad668beccc978518ad048107593ad7360a6d8 [2025-10-07T07:23:42Z DEBUG ambient_ci::run] no dry run requested [2025-10-07T07:23:42Z DEBUG ambient_ci::run] forced run requested [2025-10-07T07:23:42Z DEBUG ambient_ci::run] run? true [2025-10-07T07:23:42Z INFO ambient_ci::run] project rad:zwTxygwuz5LDGBq255RA2CbNGrz8: running CI [2025-10-07T07:23:42Z DEBUG ambient_ci::run] Executing pre-plan steps [2025-10-07T07:23:42Z DEBUG ambient_ci::plan] RUN: Action CargoFetch { sourcedir: "/tmp/.tmpl7wPl0/src", } [2025-10-07T07:23:42Z DEBUG ambient_ci::action] Plan::execute: plan=CargoFetch { sourcedir: "/tmp/.tmpl7wPl0/src", } [2025-10-07T07:23:42Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/dependencies", "CARGO_TARGET_DIR": "/home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/cache", "PATH": "/root/.cargo/bin:/bin:/home/_rad/.radicle/bin:/home/_rad/.cargo/bin", }, source_dir: "/tmp/.tmpl7wPl0/src", } SPAWN: argv=["cargo", "--version"] cwd=/tmp/.tmpl7wPl0/src (exists? true) cargo 1.90.0 (840b83a10 2025-07-30) SPAWN: argv=["cargo", "clippy", "--version"] cwd=/tmp/.tmpl7wPl0/src (exists? true) clippy 0.1.90 (1159e78c47 2025-09-14) SPAWN: argv=["rustc", "--version"] cwd=/tmp/.tmpl7wPl0/src (exists? true) rustc 1.90.0 (1159e78c4 2025-09-14) SPAWN: argv=["cargo", "fetch"] cwd=/tmp/.tmpl7wPl0/src (exists? true) [2025-10-07T07:23:43Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:43Z DEBUG ambient_ci::plan] All actions were performed successfully [2025-10-07T07:23:43Z DEBUG ambient_ci::run] create virtual drive /home/_rad/tmp/.tmpmRb0yy/src.tar [2025-10-07T07:23:43Z DEBUG ambient_ci::run] create virtual drive /home/_rad/tmp/.tmpmRb0yy/deps.tar [2025-10-07T07:23:45Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan" [2025-10-07T07:23:45Z 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: { "debemail": String("liw@liw.fi"), "debfullname": String("Lars Wirzenius"), }, }, ), 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-10-07T07:23:45Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan [2025-10-07T07:23:45Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /home/_rad/tmp/.tmpmRb0yy/ambient-execute-plan/run-ci [2025-10-07T07:23:45Z DEBUG ambient_ci::run] copy OK: true [2025-10-07T07:23:45Z DEBUG ambient_ci::run] create virtual drive /home/_rad/tmp/.tmpmRb0yy/executor.tar [2025-10-07T07:23:51Z DEBUG ambient_ci::project] removing run log file /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-10-07T07:23:51Z DEBUG ambient_ci::project] statedir is /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8, exists? true [2025-10-07T07:23:51Z DEBUG ambient_ci::project] creating run log file /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-10-07T07:23:51Z DEBUG ambient_ci::project] created run log file /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log OK [2025-10-07T07:23:51Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient" [2025-10-07T07:23:51Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1" [2025-10-07T07:23:51Z 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-10-07T07:23:51Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff" [2025-10-07T07:23:51Z 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-10-07T07:23:51Z DEBUG ambient_ci::qemu] run QEMU [2025-10-07T07:23:51Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file [2025-10-07T07:23:51Z DEBUG ambient_ci::qemu_utils] qemu-img create /home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/vm.qcow2 backing on /home/_rad/ambient.qcow2 [2025-10-07T07:23:51Z DEBUG ambient_ci::qemu] create cloud-init ISO file [2025-10-07T07:23:51Z 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-10-07T07:23:51Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpof4gHD/meta-data [2025-10-07T07:23:51Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpof4gHD/user-data [2025-10-07T07:23:52Z DEBUG ambient_ci::qemu] set console log file to /home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/console.log [2025-10-07T07:23:52Z DEBUG ambient_ci::util] create file /home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/console.log [2025-10-07T07:23:52Z DEBUG ambient_ci::qemu] set run file to /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-10-07T07:23:52Z DEBUG ambient_ci::util] create file /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log [2025-10-07T07:23:52Z 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:/home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/console.log", "-serial", "file:/home/_rad/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=/home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/vars.fd", "-drive", "format=qcow2,if=virtio,file=/home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/vm.qcow2", "-drive", "format=raw,if=virtio,file=/home/_rad/tmp/.tmpmRb0yy/executor.tar,readonly=on", "-cdrom", "/home/_rad/tmp/.tmpGxb4e4/.tmpTPzT1W/cloud_init.iso", "-drive", "format=raw,if=virtio,file=/home/_rad/tmp/.tmpmRb0yy/src.tar,readonly=on", "-drive", "format=raw,if=virtio,file=/home/_rad/tmp/.tmpmRb0yy/artifacts.tar", "-drive", "format=raw,if=virtio,file=/home/_rad/tmp/.tmpmRb0yy/cache.tar", "-drive", "format=raw,if=virtio,file=/home/_rad/tmp/.tmpmRb0yy/deps.tar,readonly=on", "-nodefaults", "-no-user-config", ], } [2025-10-07T07:30:09Z DEBUG ambient_ci::qemu] QEMU finished OK [2025-10-07T07:30:09Z DEBUG ambient_ci::qemu] run log: --------------------========== [2025-10-07T07:23:56Z TRACE ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z DEBUG ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z INFO ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z WARN ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 starts [2025-10-07T07:23:56Z ERROR ambient_execute_plan] ambient-execute-plan version 0.8.0@735cb79 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: debemail: liw@liw.fi debfullname: Lars Wirzenius - 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-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action Mkdir { pathname: "/workspace/artifacts", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=Mkdir { pathname: "/workspace/artifacts", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdc", directory: "/workspace/src", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src [2025-10-07T07:23:56Z TRACE ambient_ci::vdrive] extraction OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:56Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vdf", directory: "/workspace/deps", } [2025-10-07T07:23:56Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:56Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps [2025-10-07T07:23:58Z TRACE ambient_ci::vdrive] extraction OK [2025-10-07T07:23:58Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:23:58Z DEBUG ambient_ci::plan] RUN: Action TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:23:58Z DEBUG ambient_ci::action] Plan::execute: plan=TarExtract { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:23:58Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:23:58Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache [2025-10-07T07:24:05Z TRACE ambient_ci::vdrive] extraction OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: plan=Spawn { argv: [ "find", "/workspace", "-maxdepth", "2", "-ls", ], } [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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 Oct 7 07:23 /workspace 2621588 4 drwxr-xr-x 3 root root 4096 Oct 7 07:23 /workspace/deps 2650000 0 -rw-r--r-- 1 root root 0 Jun 30 06:52 /workspace/deps/.package-cache-mutate 2621591 4 drwxr-xr-x 5 root root 4096 Mar 5 2025 /workspace/deps/registry 2621589 172 -rw-r--r-- 1 root root 176128 Oct 7 07:23 /workspace/deps/.global-cache 2621590 0 -rw-r--r-- 1 root root 0 Feb 3 2025 /workspace/deps/.package-cache 2621443 4 drwxr-xr-x 10 root root 4096 Oct 7 07:23 /workspace/src 2621450 4 -rw-r--r-- 1 root root 1716 Oct 7 07:23 /workspace/src/Cargo.toml 2621587 4 -rw-r--r-- 1 root root 1188 Oct 7 07:23 /workspace/src/CONTRIBUTING.md 2621446 40 -rw-r--r-- 1 root root 37786 Oct 7 07:23 /workspace/src/NEWS.md 2621569 4 -rw-r--r-- 1 root root 905 Oct 7 07:23 /workspace/src/test2.yaml 2621572 4 -rw-r--r-- 1 root root 802 Oct 7 07:23 /workspace/src/build.rs 2621451 4 drwxr-xr-x 8 root root 4096 Oct 7 07:23 /workspace/src/.git 2621576 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/doc 2621514 4 drwxr-xr-x 4 root root 4096 Oct 7 07:23 /workspace/src/src 2621563 8 -rw-r--r-- 1 root root 4796 Oct 7 07:23 /workspace/src/README.md 2621573 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/.ambient 2621575 4 -rw-r--r-- 1 root root 386 Oct 7 07:23 /workspace/src/cibtool.1 2621501 4 -rw-r--r-- 1 root root 732 Oct 7 07:23 /workspace/src/ci-broker.yaml 2621448 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/.radicle 2621502 4 drwxr-xr-x 3 root root 4096 Oct 7 07:23 /workspace/src/debian 2621567 4 -rw-r--r-- 1 root root 10 Oct 7 07:23 /workspace/src/.envrc 2621571 100 -rw-r--r-- 1 root root 98580 Oct 7 07:23 /workspace/src/Cargo.lock 2621566 2932 -rw-r--r-- 1 root root 3002368 Oct 7 07:23 /workspace/src/ci-broker.db 2621570 12 -rw-r--r-- 1 root root 9723 Oct 7 07:23 /workspace/src/LICENSE-APACHE 2621444 4 -rw-r--r-- 1 root root 44 Oct 7 07:23 /workspace/src/.gitignore 2621497 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/tests 2621500 8 -rw-r--r-- 1 root root 6528 Oct 7 07:23 /workspace/src/flake.lock 2621568 8 -rw-r--r-- 1 root root 5951 Oct 7 07:23 /workspace/src/flake.nix 2621565 92 -rw-r--r-- 1 root root 92634 Oct 7 07:23 /workspace/src/ci-broker.md 2621499 4 -rw-r--r-- 1 root root 440 Oct 7 07:23 /workspace/src/cib.1 2621445 4 -rw-r--r-- 1 root root 257 Oct 7 07:23 /workspace/src/ci-broker.subplot 2621564 4 -rw-r--r-- 1 root root 1079 Oct 7 07:23 /workspace/src/LICENSE-MIT 2621562 4 -rw-r--r-- 1 root root 334 Oct 7 07:23 /workspace/src/Makefile 2621447 4 -rw-r--r-- 1 root root 469 Oct 7 07:23 /workspace/src/test.yaml 2621559 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/src/.cargo 2621442 4 drwxr-xr-x 2 root root 4096 Oct 7 07:23 /workspace/artifacts 2650001 4 drwxr-xr-x 6 root root 4096 Oct 4 05:04 /workspace/cache 2650554 4 -rw-r--r-- 1 root root 218 Aug 31 16:03 /workspace/cache/.rustdoc_fingerprint.json 2650002 4 drwxr-xr-x 12 root root 4096 Oct 7 05:58 /workspace/cache/doc 2654658 4 drwxr-xr-x 7 root root 4096 Oct 7 06:04 /workspace/cache/debug 2654657 4 drwxr-xr-x 2 root root 4096 Oct 4 04:56 /workspace/cache/tmp 2650553 4 -rw-r--r-- 1 root root 1038 Oct 7 07:13 /workspace/cache/.rustc_info.json 2650555 4 drwxr-xr-x 7 root root 4096 Oct 7 06:04 /workspace/cache/release [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action CargoFmt [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: plan=CargoFmt [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:05Z DEBUG ambient_ci::plan] RUN: Action CargoClippy [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: plan=CargoClippy [2025-10-07T07:24:05Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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.21.0 (/workspace/src) Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.03s [2025-10-07T07:24:10Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:24:10Z 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-10-07T07:24:10Z 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-10-07T07:24:10Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "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.21.0 (/workspace/src) Documenting radicle-ci-broker v0.21.0 (/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.17s 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.21.0 (/workspace/src) Finished `test` profile [unoptimized + debuginfo] target(s) in 8.73s Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_ci_broker-d66c8bec0c4e2ff8) 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_has_bad_interpreter ... ok test adapter::test::adapter_first_message_isnt_triggered ... ok test adapter::test::adapter_is_killed_after_second_message ... ok test adapter::test::adapter_is_killed_before_any_messages ... ok test adapter::test::adapter_is_killed_before_first_message ... ok test adapter::test::adapter_is_not_executable ... ok test adapter::test::adapter_produces_as_bad_message ... ok test adapter::test::adapter_outputs_too_many_messages ... ok test adapter::test::adapter_reports_success ... ok test adapter::test::adapter_reports_failure ... ok test broker::test::adapter_fails ... ok test ci_event::test::branch_created ... ok test ci_event::test::branch_deleted ... ok test ci_event::test::branch_updated ... ok test ci_event::test::nothing_updated ... ok test ci_event::test::patch_created ... ok test ci_event::test::patch_updated ... ok test ci_event::test::skipped ... ok test ci_event::test_parsed_ref::branch ... ok test ci_event::test_parsed_ref::patch ... ok test ci_event::test_parsed_ref::tag ... 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 filter::test::yaml_roundtrip ... ok test broker::test::executes_adapter ... 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_created ... ok test refs::test::creates_patch_from_str ... ok test msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok test refs::test::extracts_branch_namespaced_branch ... 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 11.79s Running unittests src/bin/cib.rs (/workspace/cache/debug/deps/cib-904bcd2fe50100c7) 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-55608878e26dc932) 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-e1c21e0388861a0f) 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-38c91210032b66ff) 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-7d0e6ae9bf70f325) 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 has been running for over 60 seconds test count_in_concurrent_processes has been running for over 60 seconds 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 count_in_concurrent_processes ... ok test fails_run_if_building_trigger_fails__but_does_not_crash ... 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_repository ... ok test filter_predicate_tag ... ok test filter_recorded_ci_events ... ok test filter_predicate_or ... 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_failed_run ... ok test handles_adapter_failing_on_a_successful_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 runs_adapters_for_all_matching_triggers ... ok test set_up_a_node ... ok test shows_adapter_specification ... ok test shows_json_config_as_json ... ok test insert_many_events_into_queue has been running for over 60 seconds test shows_yaml_config_as_json ... ok test shuts_down_when_requested ... ok test smoke_test__runs_adapter ... ok test stops_if_the_node_connection_breaks ... ok test update_and_show_information_about_run_to_running ... ok test we_can_run_rad ... ok test insert_many_events_into_queue ... ok test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 287.69s 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 3.84s + subplot docgen ci-broker.subplot -o doc/ci-broker.html INFO Starting Subplot INFO Subplot finished successfully + subplot docgen doc/userguide.subplot -o doc/userguide.html INFO Starting Subplot INFO Subplot finished successfully + make -C doc make: Entering directory '/workspace/src/doc' ./messages.sh > messages.md subplot docgen --date "Version: $(git describe --long --dirty)" architecture.subplot -o architecture.html fatal: No names found, cannot describe anything. INFO Starting Subplot INFO Subplot finished successfully pandoc --standalone --metadata title="Radicle CI overview" "overview.md" --output "overview.html" make: Leaving directory '/workspace/src/doc' + cp doc/architecture.html doc/ci-broker.html doc/overview.html doc/userguide.html /workspace/artifacts/. [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action Custom( Custom { name: "dch", args: { "debemail": String("liw@liw.fi"), "debfullname": String("Lars Wirzenius"), }, }, ) [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: plan=Custom( Custom { name: "dch", args: { "debemail": String("liw@liw.fi"), "debfullname": String("Lars Wirzenius"), }, }, ) [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } custom: source=/workspace/src custom: exe=".ambient/dch" exists=false HEAD is now at f9aad668 refactor: simplify report generation code Removing doc/architecture.html Removing doc/ci-broker.html Removing doc/messages.md Removing doc/overview.html Removing doc/userguide.html custom action "dch" exit code Some(0) [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:29:33Z DEBUG ambient_ci::plan] RUN: Action Deb [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: plan=Deb [2025-10-07T07:29:33Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } SPAWN: argv=["/bin/bash", "-c", "#!/bin/bash\nset -xeuo pipefail\n\necho \"PATH at start: $PATH\"\nexport PATH=\"/root/.cargo/bin:$PATH\"\nexport CARGO_HOME=/workspace/deps\nexport DEBEMAIL=liw@liw.fi\nexport DEBFULLNAME=\"Lars Wirzenius\"\n/bin/env\n\ncommand -v cargo\ncommand -v rustc\n\ncargo --version\nrustc --version\n\n# Get name and version of source package.\nname=\"$(dpkg-parsechangelog -SSource)\"\nversion=\"$(dpkg-parsechangelog -SVersion)\"\n\n# Get upstream version: everything before the last dash.\nuv=\"$(echo \"$version\" | sed 's/-[^-]*$//')\"\n\n# Files that will be created.\narch=\"$(dpkg --print-architecture)\"\norig=\"../${name}_${uv}.orig.tar.xz\"\ndeb=\"../${name}_${version}_${arch}.deb\"\nchanges=\"../${name}_${version}_${arch}.changes\"\n\n# Create \"upstream tarball\".\ngit archive HEAD | xz >\"$orig\"\n\n# Build package.\ndpkg-buildpackage -us -uc\n\n# Dump some information to make it easier to visually verify\n# everything looks OK. Also, test the package with the lintian tool.\n\nls -l ..\nfor x in ../*.deb; do dpkg -c \"$x\"; done\n# FIXME: disabled while this prevents radicle-native-ci deb from being built.\n# lintian -i --allow-root --fail-on warning ../*.changes\n\n# Move files to artifacts directory.\nmv ../*_* /workspace/artifacts\n "] cwd=/workspace/src (exists? true) + echo 'PATH at start: /root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' PATH at start: /root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + export PATH=/root/.cargo/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + PATH=/root/.cargo/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + export CARGO_HOME=/workspace/deps + CARGO_HOME=/workspace/deps + export DEBEMAIL=liw@liw.fi + DEBEMAIL=liw@liw.fi + export 'DEBFULLNAME=Lars Wirzenius' + DEBFULLNAME='Lars Wirzenius' + /bin/env DEBFULLNAME=Lars Wirzenius CARGO_TARGET_DIR=/workspace/cache PWD=/workspace/src SYSTEMD_EXEC_PID=268 LANG=C.UTF-8 CARGO_HOME=/workspace/deps DEBEMAIL=liw@liw.fi INVOCATION_ID=0c16ea98fde844efafd9ded695b29c95 SHLVL=2 JOURNAL_STREAM=8:12899 PATH=/root/.cargo/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin OLDPWD=/ _=/bin/env + command -v cargo /root/.cargo/bin/cargo + command -v rustc /root/.cargo/bin/rustc + cargo --version cargo 1.88.0 (873a06493 2025-05-10) + rustc --version rustc 1.88.0 (6b00bc388 2025-06-23) ++ dpkg-parsechangelog -SSource + name=radicle-ci-broker ++ dpkg-parsechangelog -SVersion + version=0.21.0.ci20251007T072933-1 ++ echo 0.21.0.ci20251007T072933-1 ++ sed 's/-[^-]*$//' + uv=0.21.0.ci20251007T072933 ++ dpkg --print-architecture + arch=amd64 + orig=../radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz + deb=../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb + changes=../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes + git archive HEAD + xz + dpkg-buildpackage -us -uc dpkg-buildpackage: info: source package radicle-ci-broker dpkg-buildpackage: info: source version 0.21.0.ci20251007T072933-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by "Lars Wirzenius" <"liw@liw.fi"> dpkg-buildpackage: info: host architecture amd64 dpkg-source --before-build . debian/rules clean dh clean dh_auto_clean dh_clean dpkg-source -b . dpkg-source: info: using source format '3.0 (quilt)' dpkg-source: info: building radicle-ci-broker using existing ./radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz dpkg-source: info: building radicle-ci-broker in radicle-ci-broker_0.21.0.ci20251007T072933-1.debian.tar.xz dpkg-source: info: building radicle-ci-broker in radicle-ci-broker_0.21.0.ci20251007T072933-1.dsc debian/rules build dh build dh_update_autotools_config dh_autoreconf dh_auto_configure debian/rules override_dh_auto_build make[1]: Entering directory '/workspace/src' true make[1]: Leaving directory '/workspace/src' debian/rules override_dh_auto_test make[1]: Entering directory '/workspace/src' echo tests are disabled, for now tests are disabled, for now make[1]: Leaving directory '/workspace/src' create-stamp debian/debhelper-build-stamp debian/rules binary dh binary dh_testroot dh_prep debian/rules override_dh_auto_install make[1]: Entering directory '/workspace/src' cargo install --offline --locked --path=. --root=debian/radicle-ci-broker/usr --bin cib --bin cibtool Installing radicle-ci-broker v0.21.0 (/workspace/src) Compiling radicle-ci-broker v0.21.0 (/workspace/src) Finished `release` profile [optimized] target(s) in 19.33s Installing debian/radicle-ci-broker/usr/bin/cib Installing debian/radicle-ci-broker/usr/bin/cibtool Installed package `radicle-ci-broker v0.21.0 (/workspace/src)` (executables `cib`, `cibtool`) warning: be sure to add `debian/radicle-ci-broker/usr/bin` to your PATH to be able to run the installed binaries find debian -name '.crates*.*' -delete make[1]: Leaving directory '/workspace/src' dh_installdocs dh_installchangelogs dh_installman dh_lintian dh_perl dh_link dh_strip_nondeterminism dh_compress dh_fixperms dh_missing dh_strip dh_makeshlibs dh_shlibdeps dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/radicle-ci-broker/usr/bin/cib debian/radicle-ci-broker/usr/bin/cibtool were not linked against libm.so.6 (they use none of the library's symbols) dh_installdeb dh_gencontrol dh_md5sums dh_builddeb dpkg-deb: building package 'radicle-ci-broker' in '../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb'. dpkg-deb: building package 'radicle-ci-broker-dbgsym' in '../radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb'. dpkg-genbuildinfo -O../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.buildinfo dpkg-genchanges -O../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes dpkg-genchanges: info: including full source code in upload dpkg-source --after-build . dpkg-buildpackage: info: full upload (original source is included) + ls -l .. total 7160 drwxr-xr-x 2 root root 4096 Oct 7 07:29 artifacts drwxr-xr-x 6 root root 4096 Oct 4 05:04 cache drwxr-xr-x 3 root root 4096 Oct 7 07:29 deps -rw-r--r-- 1 root root 632504 Oct 7 07:29 radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb -rw-r--r-- 1 root root 2320 Oct 7 07:29 radicle-ci-broker_0.21.0.ci20251007T072933-1.debian.tar.xz -rw-r--r-- 1 root root 1078 Oct 7 07:29 radicle-ci-broker_0.21.0.ci20251007T072933-1.dsc -rw-r--r-- 1 root root 6326 Oct 7 07:30 radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.buildinfo -rw-r--r-- 1 root root 2634 Oct 7 07:30 radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes -rw-r--r-- 1 root root 6135180 Oct 7 07:30 radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb -rw-r--r-- 1 root root 523712 Oct 7 07:29 radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz drwxr-xr-x 10 root root 4096 Oct 7 07:29 src + for x in ../*.deb + dpkg -c ../radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb drwxr-xr-x root/root 0 2025-10-07 07:29 ./ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/.build-id/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/.build-id/14/ -rw-r--r-- root/root 2578016 2025-10-07 07:29 ./usr/lib/debug/.build-id/14/28a5e0bacddf7615287fe6992c74f3780b3135.debug drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/lib/debug/.build-id/61/ -rw-r--r-- root/root 2363640 2025-10-07 07:29 ./usr/lib/debug/.build-id/61/de2c486f164aecf1b257ffcb55a35fb9ad26f5.debug drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/doc/ lrwxrwxrwx root/root 0 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker-dbgsym -> radicle-ci-broker + for x in ../*.deb + dpkg -c ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb drwxr-xr-x root/root 0 2025-10-07 07:29 ./ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/bin/ -rwxr-xr-x root/root 10470168 2025-10-07 07:29 ./usr/bin/cib -rwxr-xr-x root/root 11149480 2025-10-07 07:29 ./usr/bin/cibtool drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/doc/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker/ -rw-r--r-- root/root 650 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker/changelog.Debian.gz -rw-r--r-- root/root 396 2025-10-07 07:29 ./usr/share/doc/radicle-ci-broker/copyright drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/lintian/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/lintian/overrides/ -rw-r--r-- root/root 120 2025-10-07 07:29 ./usr/share/lintian/overrides/radicle-ci-broker drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/man/ drwxr-xr-x root/root 0 2025-10-07 07:29 ./usr/share/man/man1/ -rw-r--r-- root/root 298 2025-10-07 07:29 ./usr/share/man/man1/cib.1.gz -rw-r--r-- root/root 277 2025-10-07 07:29 ./usr/share/man/man1/cibtool.1.gz + mv ../radicle-ci-broker-dbgsym_0.21.0.ci20251007T072933-1_amd64.deb ../radicle-ci-broker_0.21.0.ci20251007T072933-1.debian.tar.xz ../radicle-ci-broker_0.21.0.ci20251007T072933-1.dsc ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.buildinfo ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.changes ../radicle-ci-broker_0.21.0.ci20251007T072933-1_amd64.deb ../radicle-ci-broker_0.21.0.ci20251007T072933.orig.tar.xz /workspace/artifacts [2025-10-07T07:30:03Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:30:03Z DEBUG ambient_ci::plan] RUN: Action TarCreate { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:30:03Z DEBUG ambient_ci::action] Plan::execute: plan=TarCreate { archive: "/dev/vde", directory: "/workspace/cache", } [2025-10-07T07:30:03Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder { filename: Some( "/dev/vde", ), root: Some( "/workspace/cache", ), size: None, } [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vde; exists? true [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] create archive file /dev/vde [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] directory /workspace/cache exists? true [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] add contents of /workspace/cache as . [2025-10-07T07:30:03Z TRACE ambient_ci::vdrive] calling tar_create [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] created virtual drive /dev/vde [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] RUN: Action TarCreate { archive: "/dev/vdd", directory: "/workspace/artifacts", } [2025-10-07T07:30:06Z DEBUG ambient_ci::action] Plan::execute: plan=TarCreate { archive: "/dev/vdd", directory: "/workspace/artifacts", } [2025-10-07T07:30:06Z DEBUG ambient_ci::action] Plan::execute: context=Context { envs: { "CARGO_HOME": "/workspace/deps", "PATH": "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "CARGO_TARGET_DIR": "/workspace/cache", }, source_dir: "/workspace/src", } [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder { filename: Some( "/dev/vdd", ), root: Some( "/workspace/artifacts", ), size: None, } [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vdd; exists? true [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] create archive file /dev/vdd [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] directory /workspace/artifacts exists? true [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] add contents of /workspace/artifacts as . [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] calling tar_create [2025-10-07T07:30:06Z TRACE ambient_ci::vdrive] created virtual drive /dev/vdd [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] RUN: Action finished OK [2025-10-07T07:30:06Z DEBUG ambient_ci::plan] All actions were performed successfully ambient-execute-plan ends EXIT CODE: 0 ==================== [2025-10-07T07:30:09Z DEBUG ambient_ci::qemu] QEMU: CI run under exit code 0 [2025-10-07T07:30:10Z DEBUG ambient_ci::run] CI run exit code from QEMU: 0 [2025-10-07T07:30:10Z DEBUG ambient_ci::run] remove old cache [2025-10-07T07:30:12Z DEBUG ambient_ci::run] extract cache [2025-10-07T07:30:17Z DEBUG ambient_ci::run] Executing post-plan steps [2025-10-07T07:30:17Z DEBUG ambient_ci::plan] All actions were performed successfully [2025-10-07T07:30:17Z DEBUG ambient_ci::project] write project state to /home/_rad/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/meta.yaml [2025-10-07T07:30:18Z INFO ambient] ambient ends successfully
<empty log>