CI run for rad:zwTxygwuz5LDGBq255RA2CbNGrz8

Radicle repository id rad:zwTxygwuz5LDGBq255RA2CbNGrz8

Table of Contents

Run log

[2025-09-01T09:06:20Z INFO  ambient] ambient starts
[=3h[=3hBdsDxe: 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)
Welcome to GRUB!


INFO: 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   2.9M  1 disk 
vdc    254:32   0   5.7M  1 disk 
vdd    254:48   0   9.3G  0 disk 
vde    254:64   0  46.6G  0 disk 
vdf    254:80   0 636.8M  1 disk 
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad         0 2025-09-01 08:58 ./
-rw-r--r-- _rad/_rad      1793 2025-09-01 08:58 ./plan.yaml
-rwxr-xr-x _rad/_rad   3011224 2025-09-01 08:58 ./run-ci
INFO: Extracted files:
  4587530      4 drwxr-xr-x   2 1001     1001         4096 Sep  1 08:58 .
  4587526      4 -rw-r--r--   1 1001     1001         1793 Sep  1 08:58 ./plan.yaml
  4587527   2944 -rwxr-xr-x   1 1001     1001      3011224 Sep  1 08:58 ./run-ci
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
[2025-09-01T08:59:00Z TRACE ambient_execute_plan] ambient-execute-plan starts
[2025-09-01T08:59:00Z DEBUG ambient_execute_plan] ambient-execute-plan starts
[2025-09-01T08:59:00Z INFO  ambient_execute_plan] ambient-execute-plan starts
[2025-09-01T08:59:00Z WARN  ambient_execute_plan] ambient-execute-plan starts
[2025-09-01T08:59:00Z ERROR ambient_execute_plan] ambient-execute-plan 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


RUN: Action Mkdir {
    pathname: "/workspace",
}
[2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace",
    }
RUN: Action finished OK
RUN: Action Mkdir {
    pathname: "/workspace/artifacts",
}
[2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace/artifacts",
    }
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdc",
    directory: "/workspace/src",
}
[2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
[2025-09-01T08:59:00Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
[2025-09-01T08:59:00Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdf",
    directory: "/workspace/deps",
}
[2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
[2025-09-01T08:59:00Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
[2025-09-01T08:59:02Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
[2025-09-01T08:59:02Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
[2025-09-01T08:59:02Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
[2025-09-01T08:59:38Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action Spawn {
    argv: [
        "find",
        "/workspace",
        "-maxdepth",
        "2",
        "-ls",
    ],
}
[2025-09-01T08:59:38Z DEBUG ambient_ci::action] Plan::execute: Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"]
       cwd=/workspace/src (exists? true)
       extra_env=[]
  2621441      4 drwxr-xr-x   6 root     root         4096 Sep  1 08:59 /workspace
  2621694      4 drwxr-xr-x   3 root     root         4096 Sep  1 08:58 /workspace/deps
  2621695      0 -rw-r--r--   1 root     root            0 Aug 31 15:59 /workspace/deps/.package-cache-mutate
  2621698      4 drwxr-xr-x   5 root     root         4096 Aug 31 15:59 /workspace/deps/registry
  2621696    112 -rw-r--r--   1 root     root       114688 Sep  1 08:58 /workspace/deps/.global-cache
  2621697      0 -rw-r--r--   1 root     root            0 Aug 31 15:59 /workspace/deps/.package-cache
  2621443      4 drwxr-xr-x  10 root     root         4096 Sep  1 08:58 /workspace/src
  2621520      4 -rw-r--r--   1 root     root         1713 Sep  1 08:58 /workspace/src/Cargo.toml
  2621682      4 -rw-r--r--   1 root     root         1188 Sep  1 08:58 /workspace/src/CONTRIBUTING.md
  2621502     36 -rw-r--r--   1 root     root        34789 Sep  1 08:58 /workspace/src/NEWS.md
  2621517      4 -rw-r--r--   1 root     root          970 Sep  1 08:58 /workspace/src/build.rs
  2621523      4 drwxr-xr-x   8 root     root         4096 Sep  1 08:58 /workspace/src/.git
  2621684      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/doc
  2621450      4 drwxr-xr-x   4 root     root         4096 Sep  1 08:58 /workspace/src/src
  2621516      8 -rw-r--r--   1 root     root         4796 Sep  1 08:58 /workspace/src/README.md
  2621447      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/.ambient
  2621496      4 -rw-r--r--   1 root     root          386 Sep  1 08:58 /workspace/src/cibtool.1
  2621515      4 -rw-r--r--   1 root     root          732 Sep  1 08:58 /workspace/src/ci-broker.yaml
  2621445      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/.radicle
  2621503      4 drwxr-xr-x   3 root     root         4096 Sep  1 08:58 /workspace/src/debian
  2621501      4 -rw-r--r--   1 root     root           10 Sep  1 08:58 /workspace/src/.envrc
  2621683     92 -rw-r--r--   1 root     root        90122 Sep  1 08:58 /workspace/src/Cargo.lock
  2621679     12 -rw-r--r--   1 root     root         9723 Sep  1 08:58 /workspace/src/LICENSE-APACHE
  2621519      4 -rw-r--r--   1 root     root           44 Sep  1 08:58 /workspace/src/.gitignore
  2621521      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/tests
  2621681      8 -rw-r--r--   1 root     root         6528 Sep  1 08:58 /workspace/src/flake.lock
  2621518      8 -rw-r--r--   1 root     root         5951 Sep  1 08:58 /workspace/src/flake.nix
  2621495     92 -rw-r--r--   1 root     root        90815 Sep  1 08:58 /workspace/src/ci-broker.md
  2621444      4 -rw-r--r--   1 root     root          440 Sep  1 08:58 /workspace/src/cib.1
  2621500      4 -rw-r--r--   1 root     root          257 Sep  1 08:58 /workspace/src/ci-broker.subplot
  2621449      4 -rw-r--r--   1 root     root         1079 Sep  1 08:58 /workspace/src/LICENSE-MIT
  2621680      4 -rw-r--r--   1 root     root          334 Sep  1 08:58 /workspace/src/Makefile
  2621497      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/.cargo
  2621442      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:59 /workspace/artifacts
  2645016      4 drwxr-xr-x   6 root     root         4096 Aug 31 16:09 /workspace/cache
  2653120      4 -rw-r--r--   1 root     root          218 Aug 31 16:03 /workspace/cache/.rustdoc_fingerprint.json
  2657083      4 drwxr-xr-x  12 root     root         4096 Aug 31 16:15 /workspace/cache/doc
  2645018      4 drwxr-xr-x   7 root     root         4096 Aug 31 16:18 /workspace/cache/debug
  2645017      4 drwxr-xr-x   2 root     root         4096 Aug 31 16:00 /workspace/cache/tmp
  2657082      4 -rw-r--r--   1 root     root         1034 Aug 31 16:15 /workspace/cache/.rustc_info.json
  2653121      4 drwxr-xr-x   7 root     root         4096 Aug 31 16:18 /workspace/cache/release
RUN: Action finished OK
RUN: Action CargoFmt
[2025-09-01T08:59:38Z DEBUG ambient_ci::action] Plan::execute: CargoFmt
SPAWN: argv=["cargo", "fmt", "--check"]
       cwd=/workspace/src (exists? true)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
RUN: Action finished OK
RUN: Action CargoClippy
[2025-09-01T08:59:41Z DEBUG ambient_ci::action] Plan::execute: CargoClippy
SPAWN: argv=["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
       cwd=/workspace/src (exists? true)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
   Compiling libc v0.2.175
   Compiling jobserver v0.1.33
   Compiling getrandom v0.2.15
   Compiling getrandom v0.3.2
   Compiling rand_core v0.6.4
   Compiling tempfile v3.19.1
   Compiling cc v1.2.18
   Compiling rand_chacha v0.3.1
   Compiling roadmap v0.7.0
    Checking ec25519 v0.1.0
   Compiling rand v0.8.5
    Checking cyphergraphy v0.3.0
    Checking cypheraddr v0.4.0
    Checking socks5-client v0.4.1
   Compiling tera v1.20.0
    Checking qcheck v1.0.0
    Checking cyphernet v0.5.2
    Checking ssh-key v0.6.7
   Compiling libz-sys v1.1.22
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling pikchr v0.1.4
   Compiling sqlite3-src v0.5.1
   Compiling filetime v0.2.25
   Compiling tar v0.4.44
   Compiling subplot v0.12.0
    Checking nix v0.29.0
    Checking fs_at v0.2.1
   Compiling subplot-build v0.12.0
   Compiling radicle-surf v0.22.1
   Compiling subplotlib-derive v0.12.0
   Compiling radicle-ci-broker v0.19.1 (/workspace/src)
    Checking remove_dir_all v1.0.0
    Checking uuid v1.16.0
    Checking fs2 v0.4.3
    Checking subplotlib v0.12.0
    Checking sqlite3-sys v0.15.2
    Checking sqlite v0.32.0
    Checking git2 v0.19.0
    Checking radicle-git-ext v0.8.1
    Checking radicle-crypto v0.12.0
    Checking radicle-cob v0.14.0
    Checking radicle v0.16.1
    Checking radicle-job v0.2.0
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.13s
RUN: Action finished OK
RUN: Action Shell {
    shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n",
}
[2025-09-01T09:00:13Z DEBUG ambient_ci::action] Plan::execute: 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",
    }
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)
       extra_env=[]
+ 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:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+ PATH=/root/.cargo/bin:/root/.radicle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+ rad --help
+ cargo doc --workspace --no-deps
    Checking cyphergraphy v0.3.0
    Checking radicle-git-ext v0.8.1
   Compiling radicle-ci-broker v0.19.1 (/workspace/src)
    Checking cypheraddr v0.4.0
    Checking radicle-surf v0.22.1
    Checking socks5-client v0.4.1
    Checking cyphernet v0.5.2
    Checking radicle-crypto v0.12.0
    Checking radicle-cob v0.14.0
    Checking radicle v0.16.1
    Checking radicle-job v0.2.0
 Documenting radicle-ci-broker v0.19.1 (/workspace/src)
warning: unresolved link to `RunningProcess`
   --> src/adapter.rs:361:44
    |
361 |     /// 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 7.96s
   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 libc v0.2.175
   Compiling getrandom v0.2.15
   Compiling getrandom v0.3.2
   Compiling sqlite3-src v0.5.1
   Compiling filetime v0.2.25
   Compiling rand_core v0.6.4
   Compiling tempfile v3.19.1
   Compiling tar v0.4.44
   Compiling rand_chacha v0.3.1
   Compiling rand v0.8.5
   Compiling roadmap v0.7.0
   Compiling radicle-surf v0.22.1
   Compiling tera v1.20.0
   Compiling libz-sys v1.1.22
   Compiling ec25519 v0.1.0
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling git2 v0.19.0
   Compiling cyphergraphy v0.3.0
   Compiling sqlite3-sys v0.15.2
   Compiling sqlite v0.32.0
   Compiling cypheraddr v0.4.0
   Compiling qcheck v1.0.0
   Compiling socks5-client v0.4.1
   Compiling subplot v0.12.0
   Compiling cyphernet v0.5.2
   Compiling ssh-key v0.6.7
   Compiling radicle-git-ext v0.8.1
   Compiling radicle-crypto v0.12.0
   Compiling nix v0.29.0
   Compiling radicle-cob v0.14.0
   Compiling subplot-build v0.12.0
   Compiling subplotlib-derive v0.12.0
   Compiling radicle-ci-broker v0.19.1 (/workspace/src)
   Compiling fs_at v0.2.1
   Compiling remove_dir_all v1.0.0
   Compiling radicle v0.16.1
   Compiling uuid v1.16.0
   Compiling fs2 v0.4.3
   Compiling subplotlib v0.12.0
   Compiling radicle-job v0.2.0
    Finished `test` profile [unoptimized + debuginfo] target(s) in 31.08s
     Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_ci_broker-c78c4b2b6b0a3425)

running 85 tests
test adapter::test::adapter_does_not_exist ... ok
test adapter::test::adapter_ends_ok_before_second_message ... ok
test adapter::test::adapter_first_message_isnt_triggered ... ok
test adapter::test::adapter_exits_nonzero ... ok
test adapter::test::adapter_has_bad_interpreter ... ok
test adapter::test::adapter_is_killed_after_first_message ... 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_not_executable ... ok
test adapter::test::adapter_outputs_too_many_messages ... ok
test adapter::test::adapter_produces_as_bad_message ... ok
test adapter::test::adapter_reports_failure ... ok
test adapter::test::adapter_reports_success ... ok
test broker::test::adapter_fails ... ok
test 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 broker::test::executes_adapter ... ok
test filter::test::only_allows_patch_creation ... ok
test filter::test::only_allows_patch_update ... ok
test filter::test::yaml_roundtrip ... ok
test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok
test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok
test msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok
test refs::test::creates_patch_from_str ... 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 msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok
test refs::test::ref_string_from_plain_branch_name ... 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 run::test::serialize_run_state ... 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::sleep_for_too_long_while_reading_with_realtimelines ... ok
test timeoutcmd::tests::yes_to_stderr ... ok
test timeoutcmd::tests::yes_to_stdout ... ok
test timeoutcmd::tests::yes_to_stdout_while_reading_with_realtimelines ... ok

test result: ok. 85 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.45s

     Running unittests src/bin/cib.rs (/workspace/cache/debug/deps/cib-821e056b6b6c701c)

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-db6fcd65156980ef)

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-cbd812899974b5fd)

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-453dba3e4fad77cb)

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-f470dfa9517bc671)

running 70 tests
test adapter_with_url_runs_successfully ... ok
test add_information_about_run_that_s_finished_in_failure_to_database ... ok
test adapter_can_provide_url_for_info_on_run ... ok
test add_information_about_run_that_s_finished_successfully_to_database ... ok
test add_information_about_run_that_s_running_to_database ... ok
test allows_setting_minimum_log_level ... ok
test add_information_about_triggered_run_to_database ... ok
test can_add_a_branch_creation_event_to_queue ... ok
test can_add_a_branch_deletion_event_to_queue ... ok
test can_add_a_branch_update_event_to_queue ... ok
test can_add_a_patch_creation_event_to_queue ... ok
test can_add_a_patch_update_event_to_queue ... ok
test can_add_shutdown_event_to_queue ... ok
test can_output_trigger_message_for_a_ci_run ... ok
test can_remove_all_queued_events ... ok
test can_trigger_a_ci_run ... ok
test convert_recorded_node_events_into_ci_events ... ok
test count_in_a_single_process ... ok
test create_a_repository ... ok
test don_t_insert_event_for_non_existent_repository ... ok
test dummy_adapter_runs_successfully ... ok
test event_synthesizer_terminates_after_first_connection ... ok
test events_can_be_queued_and_removed_from_queue ... ok
test extract_cib_log_from_journald_and_pretty_print ... ok
test fails_run_if_building_trigger_fails__but_does_not_crash ... ok
test count_in_concurrent_processes ... ok
test filter_predicate_allow ... ok
test filter_predicate_and ... ok
test filter_predicate_branch ... ok
test filter_predicate_branchdeleted ... ok
test filter_predicate_branchcreated ... 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 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 filter_predicate_or ... 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 insert_many_events_into_queue ... ok
test set_up_a_node ... ok
test shows_adapter_specification ... ok
test shows_config_as_json ... ok
test shuts_down_when_requested ... ok
test runs_adapters_for_all_matching_triggers ... ok
test smoke_test__runs_adapter ... ok
test stops_if_the_node_connection_breaks ... ok
test we_can_run_rad ... ok
test update_and_show_information_about_run_to_running ... ok

test result: ok. 70 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 135.75s

   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 5.33s

+ 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
make: Leaving directory '/workspace/src/doc'
+ cp doc/architecture.html doc/ci-broker.html doc/userguide.html /workspace/artifacts/.
RUN: Action finished OK
RUN: Action Custom(
    Custom {
        name: "dch",
        args: {
            "debfullname": String("Lars Wirzenius"),
            "debemail": String("liw@liw.fi"),
        },
    },
)
[2025-09-01T09:03:45Z DEBUG ambient_ci::action] Plan::execute: Custom(
        Custom {
            name: "dch",
            args: {
                "debfullname": String("Lars Wirzenius"),
                "debemail": String("liw@liw.fi"),
            },
        },
    )
custom: source=/workspace/src
custom: exe=".ambient/dch" exists=false
HEAD is now at 27317200 fix: max_run_time setting in cib
Removing doc/architecture.html
Removing doc/ci-broker.html
Removing doc/messages.md
Removing doc/userguide.html
custom action "dch" exit code Some(0)
RUN: Action finished OK
RUN: Action Deb
[2025-09-01T09:03:45Z DEBUG ambient_ci::action] Plan::execute: Deb
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)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
+ 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=275
LANG=C.UTF-8
CARGO_HOME=/workspace/deps
DEBEMAIL=liw@liw.fi
INVOCATION_ID=615c35b261934b5c918dd8c7a5104fe6
SHLVL=2
JOURNAL_STREAM=8:14727
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.19.1.ci20250901T090345-1
++ sed 's/-[^-]*$//'
++ echo 0.19.1.ci20250901T090345-1
+ uv=0.19.1.ci20250901T090345
++ dpkg --print-architecture
+ arch=amd64
+ orig=../radicle-ci-broker_0.19.1.ci20250901T090345.orig.tar.xz
+ deb=../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb
+ changes=../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.changes
+ xz
+ git archive HEAD
+ dpkg-buildpackage -us -uc
dpkg-buildpackage: info: source package radicle-ci-broker
dpkg-buildpackage: info: source version 0.19.1.ci20250901T090345-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.19.1.ci20250901T090345.orig.tar.xz
dpkg-source: info: building radicle-ci-broker in radicle-ci-broker_0.19.1.ci20250901T090345-1.debian.tar.xz
dpkg-source: info: building radicle-ci-broker in radicle-ci-broker_0.19.1.ci20250901T090345-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.19.1 (/workspace/src)
   Compiling libc v0.2.175
   Compiling jobserver v0.1.33
   Compiling getrandom v0.2.15
   Compiling getrandom v0.3.2
   Compiling rand_core v0.6.4
   Compiling tempfile v3.19.1
   Compiling cc v1.2.18
   Compiling rand_chacha v0.3.1
   Compiling roadmap v0.7.0
   Compiling rand v0.8.5
   Compiling ec25519 v0.1.0
   Compiling tera v1.20.0
   Compiling libz-sys v1.1.22
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling pikchr v0.1.4
   Compiling sqlite3-src v0.5.1
   Compiling cyphergraphy v0.3.0
   Compiling cypheraddr v0.4.0
   Compiling socks5-client v0.4.1
   Compiling subplot v0.12.0
   Compiling cyphernet v0.5.2
   Compiling qcheck v1.0.0
   Compiling ssh-key v0.6.7
   Compiling filetime v0.2.25
   Compiling tar v0.4.44
   Compiling nix v0.29.0
   Compiling fs_at v0.2.1
   Compiling radicle-surf v0.22.1
   Compiling subplot-build v0.12.0
   Compiling radicle-ci-broker v0.19.1 (/workspace/src)
   Compiling remove_dir_all v1.0.0
   Compiling subplotlib-derive v0.12.0
   Compiling uuid v1.16.0
   Compiling fs2 v0.4.3
   Compiling subplotlib v0.12.0
   Compiling git2 v0.19.0
   Compiling sqlite3-sys v0.15.2
   Compiling sqlite v0.32.0
   Compiling radicle-git-ext v0.8.1
   Compiling radicle-crypto v0.12.0
   Compiling radicle-cob v0.14.0
   Compiling radicle v0.16.1
   Compiling radicle-job v0.2.0
    Finished `release` profile [optimized] target(s) in 1m 29s
  Installing debian/radicle-ci-broker/usr/bin/cib
  Installing debian/radicle-ci-broker/usr/bin/cibtool
   Installed package `radicle-ci-broker v0.19.1 (/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/cibtool debian/radicle-ci-broker/usr/bin/cib 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.19.1.ci20250901T090345-1_amd64.deb'.
dpkg-deb: building package 'radicle-ci-broker-dbgsym' in '../radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb'.
 dpkg-genbuildinfo -O../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.buildinfo
 dpkg-genchanges -O../radicle-ci-broker_0.19.1.ci20250901T090345-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 6772
drwxr-xr-x  2 root root    4096 Sep  1 09:03 artifacts
drwxr-xr-x  6 root root    4096 Aug 31 16:09 cache
drwxr-xr-x  3 root root    4096 Sep  1 09:03 deps
-rw-r--r--  1 root root  677180 Sep  1 09:05 radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb
-rw-r--r--  1 root root    2288 Sep  1 09:03 radicle-ci-broker_0.19.1.ci20250901T090345-1.debian.tar.xz
-rw-r--r--  1 root root    1078 Sep  1 09:03 radicle-ci-broker_0.19.1.ci20250901T090345-1.dsc
-rw-r--r--  1 root root    6326 Sep  1 09:05 radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.buildinfo
-rw-r--r--  1 root root    2634 Sep  1 09:05 radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.changes
-rw-r--r--  1 root root 6079688 Sep  1 09:05 radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb
-rw-r--r--  1 root root  134896 Sep  1 09:03 radicle-ci-broker_0.19.1.ci20250901T090345.orig.tar.xz
drwxr-xr-x 10 root root    4096 Sep  1 09:03 src
+ for x in ../*.deb
+ dpkg -c ../radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb
drwxr-xr-x root/root         0 2025-09-01 09:03 ./
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/.build-id/62/
-rw-r--r-- root/root   2641888 2025-09-01 09:03 ./usr/lib/debug/.build-id/62/4b91910b8fb1ef9312e633911bc8c5fdf1f097.debug
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/.build-id/a1/
-rw-r--r-- root/root   2886216 2025-09-01 09:03 ./usr/lib/debug/.build-id/a1/d4146b95b8a0886ab57121dfb687c2f135b930.debug
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/doc/
lrwxrwxrwx root/root         0 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker-dbgsym -> radicle-ci-broker
+ for x in ../*.deb
+ dpkg -c ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb
drwxr-xr-x root/root         0 2025-09-01 09:03 ./
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/bin/
-rwxr-xr-x root/root  10769288 2025-09-01 09:03 ./usr/bin/cib
-rwxr-xr-x root/root  11551032 2025-09-01 09:03 ./usr/bin/cibtool
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/doc/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker/
-rw-r--r-- root/root       621 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker/changelog.Debian.gz
-rw-r--r-- root/root       396 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker/copyright
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/lintian/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       120 2025-09-01 09:03 ./usr/share/lintian/overrides/radicle-ci-broker
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/man/
drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/man/man1/
-rw-r--r-- root/root       298 2025-09-01 09:03 ./usr/share/man/man1/cib.1.gz
-rw-r--r-- root/root       277 2025-09-01 09:03 ./usr/share/man/man1/cibtool.1.gz
+ mv ../radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb ../radicle-ci-broker_0.19.1.ci20250901T090345-1.debian.tar.xz ../radicle-ci-broker_0.19.1.ci20250901T090345-1.dsc ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.buildinfo ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.changes ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb ../radicle-ci-broker_0.19.1.ci20250901T090345.orig.tar.xz /workspace/artifacts
RUN: Action finished OK
RUN: Action TarCreate {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
[2025-09-01T09:05:31Z DEBUG ambient_ci::action] Plan::execute: TarCreate {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
[2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder {
        filename: Some(
            "/dev/vde",
        ),
        root: Some(
            "/workspace/cache",
        ),
        size: None,
    }
[2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vde; exists? true
[2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] create archive file /dev/vde
[2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] directory /workspace/cache exists? true
[2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] add contents of /workspace/cache as .
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] created virtual drive /dev/vde
RUN: Action finished OK
RUN: Action TarCreate {
    archive: "/dev/vdd",
    directory: "/workspace/artifacts",
}
[2025-09-01T09:05:58Z DEBUG ambient_ci::action] Plan::execute: TarCreate {
        archive: "/dev/vdd",
        directory: "/workspace/artifacts",
    }
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder {
        filename: Some(
            "/dev/vdd",
        ),
        root: Some(
            "/workspace/artifacts",
        ),
        size: None,
    }
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vdd; exists? true
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] create archive file /dev/vdd
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] directory /workspace/artifacts exists? true
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] add contents of /workspace/artifacts as .
[2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] created virtual drive /dev/vdd
RUN: Action finished OK
ambient-execute-plan ends
EXIT CODE: 0
[2025-09-01T09:06:20Z INFO  ambient] ambient ends successfully

Trigger message

{
  "request": "trigger",
  "version": 1,
  "event_type": "patch",
  "repository": {
    "id": "rad:zwTxygwuz5LDGBq255RA2CbNGrz8",
    "name": "radicle-ci-broker",
    "description": "Radicle CI broker",
    "private": false,
    "default_branch": "main",
    "delegates": [
      "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
      "did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT"
    ]
  },
  "action": "Created",
  "patch": {
    "id": "b87bbb953be48a71fe07c0ac56d5c4b35e31de8a",
    "author": {
      "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
      "alias": "liw"
    },
    "title": "fix: max_run_time setting in cib",
    "state": {
      "status": "open",
      "conflicts": []
    },
    "before": "b3898f653ff65b6c423096ce4a2c34b7aa22a7a8",
    "after": "27317200c10b027f6f32d9853976d974e52fd224",
    "commits": [
      "27317200c10b027f6f32d9853976d974e52fd224"
    ],
    "target": "b3898f653ff65b6c423096ce4a2c34b7aa22a7a8",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "b87bbb953be48a71fe07c0ac56d5c4b35e31de8a",
        "author": {
          "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
          "alias": "liw"
        },
        "description": "The cib configuration setting max_run_time didn't always work, because\nits implementation only killed the adapter, not any child processes of\nthe adapter. We fix this by running the adapter in its own process\ngroup, and killing the whole group if the time runs out.\n\nIn addition, the timeoutcmd.rs module (and the ChildProcess type) is\nsimplified, by making the deadline mandatory. It is no longer possible\nto run an adapter without a timeout. This makes sense, as it'd not be\nuseful to allow an adapter to run indefinitely. The old behavior can\nbe simulated by setting a very long timeout, such as a year.\n\nSigned-off-by: Lars Wirzenius <liw@liw.fi>",
        "base": "b3898f653ff65b6c423096ce4a2c34b7aa22a7a8",
        "oid": "27317200c10b027f6f32d9853976d974e52fd224",
        "timestamp": 1756717118
      }
    ]
  }
}

Ambient stdout

[2025-09-01T08:58:40Z INFO  ambient] ambient starts
[2025-09-01T08:58:40Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists
[2025-09-01T08:58:40Z DEBUG ambient] complete configuration: Config {
        tmpdir: "/srv/tmp",
        image_store: "/home/_rad/.local/state/ambient-ci/images",
        projects: "/home/_rad/ambient-projects.yaml",
        state: "/srv/ambient-state",
        rsync_target: None,
        rsync_target_base: None,
        rsync_target_map: None,
        dput_target: None,
        executor: Some(
            "/usr/bin/ambient-execute-plan",
        ),
        artifacts_max_size: Byte(
            10000000000,
        ),
        cache_max_size: Byte(
            50000000000,
        ),
        qemu: QemuConfig {
            cpus: 4,
            memory: Byte(
                8000000000,
            ),
            kvm_binary: "/usr/bin/kvm",
            ovmf_vars_file: "/usr/share/ovmf/OVMF.fd",
            ovmf_code_file: "/usr/share/ovmf/OVMF.fd",
        },
    }
[2025-09-01T08:58:40Z DEBUG ambient] configuration: Config {
        tmpdir: "/srv/tmp",
        image_store: "/home/_rad/.local/state/ambient-ci/images",
        projects: "/home/_rad/ambient-projects.yaml",
        state: "/srv/ambient-state",
        rsync_target: None,
        rsync_target_base: None,
        rsync_target_map: None,
        dput_target: None,
        executor: Some(
            "/usr/bin/ambient-execute-plan",
        ),
        artifacts_max_size: Byte(
            10000000000,
        ),
        cache_max_size: Byte(
            50000000000,
        ),
        qemu: QemuConfig {
            cpus: 4,
            memory: Byte(
                8000000000,
            ),
            kvm_binary: "/usr/bin/kvm",
            ovmf_vars_file: "/usr/share/ovmf/OVMF.fd",
            ovmf_code_file: "/usr/share/ovmf/OVMF.fd",
        },
    }
[2025-09-01T08:58:40Z DEBUG ambient_ci::project] load project state from /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/meta.yaml
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] latest commit: "7dc8f814fc9072f318f14b5953760c884a4d72cc"
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] is a git repository
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] git repository is clean
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] current (HEAD) commit: 27317200c10b027f6f32d9853976d974e52fd224
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] no dry run requested
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] forced run requested
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] run? true
[2025-09-01T08:58:40Z INFO  ambient_ci::run] project rad:zwTxygwuz5LDGBq255RA2CbNGrz8: running CI
[2025-09-01T08:58:40Z DEBUG ambient_ci::run] Executing pre-plan steps
[2025-09-01T08:58:40Z DEBUG ambient_ci::action] Plan::execute: CargoFetch {
        sourcedir: "/tmp/.tmp9q1KkJ/src",
        dependenciesdir: "/srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/dependencies",
    }
SPAWN: argv=["env", "CARGO_HOME=/srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/dependencies", "cargo", "fetch", "--locked"]
       cwd=/tmp/.tmp9q1KkJ/src (exists? true)
       extra_env=[]
 Downloading crates ...
  Downloaded libc v0.2.175
[2025-09-01T08:58:41Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpiXZgfx/src.tar
[2025-09-01T08:58:41Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpiXZgfx/deps.tar
[2025-09-01T08:58:46Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan"
[2025-09-01T08:58:46Z 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-09-01T08:58:46Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan
[2025-09-01T08:58:46Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /srv/tmp/.tmpiXZgfx/ambient-execute-plan/run-ci
[2025-09-01T08:58:46Z DEBUG ambient_ci::run] copy OK: true
[2025-09-01T08:58:46Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpiXZgfx/executor.tar
[2025-09-01T08:58:53Z DEBUG ambient_ci::project] removing run log file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log
[2025-09-01T08:58:53Z DEBUG ambient_ci::project] statedir is /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8, exists? true
[2025-09-01T08:58:53Z DEBUG ambient_ci::project] creating run log file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log
[2025-09-01T08:58:53Z DEBUG ambient_ci::project] created run log file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log OK
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient"
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1"
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] with_runcmd called: "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n        echo \"EXIT CODE: 0\"\nelse\n        echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n"
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff"
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] LocalDataStoreBuilder: LocalDataStoreBuilder {
        hostname: Some(
            "ambient",
        ),
        network: false,
        bootcmd: [],
        runcmd: [
            "echo xyzzy > /dev/ttyS1",
            "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n        echo \"EXIT CODE: 0\"\nelse\n        echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n",
            "poweroff",
        ],
    }
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu] run QEMU
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu_utils] qemu-img create /srv/tmp/.tmpJTjS8r/.tmp5pmgbg/vm.qcow2 backing on /home/_rad/ambient.qcow2
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu] create cloud-init ISO file
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] LocalDataStore: LocalDataStore {
        hostname: "ambient",
        network: false,
        bootcmd: [],
        runcmd: [
            "echo xyzzy > /dev/ttyS1",
            "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n        echo \"EXIT CODE: 0\"\nelse\n        echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n",
            "poweroff",
        ],
    }
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpjpPb21/meta-data
[2025-09-01T08:58:53Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpjpPb21/user-data
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu] set console log file to /srv/tmp/.tmpJTjS8r/.tmp5pmgbg/console.log
[2025-09-01T08:58:53Z DEBUG ambient_ci::util] create file /srv/tmp/.tmpJTjS8r/.tmp5pmgbg/console.log
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu] set run file to /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log
[2025-09-01T08:58:53Z DEBUG ambient_ci::util] create file /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log
[2025-09-01T08:58:53Z DEBUG ambient_ci::qemu] run QEMU: QemuArgs {
        args: [
            "-m",
            "7629",
            "-smp",
            "cpus=4",
            "-cpu",
            "kvm64",
            "-machine",
            "type=q35,accel=kvm,usb=off",
            "-uuid",
            "a85c9de7-edc0-4e54-bead-112e5733582c",
            "-boot",
            "strict=on",
            "-name",
            "ambient-ci-vm",
            "-rtc",
            "base=utc,driftfix=slew",
            "-display",
            "none",
            "-device",
            "virtio-rng-pci",
            "-serial",
            "file:/srv/tmp/.tmpJTjS8r/.tmp5pmgbg/console.log",
            "-serial",
            "file:/srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/run.log",
            "-drive",
            "if=pflash,format=raw,unit=0,file=/usr/share/ovmf/OVMF.fd,readonly=on",
            "-drive",
            "if=pflash,format=raw,unit=1,file=/srv/tmp/.tmpJTjS8r/.tmp5pmgbg/vars.fd",
            "-drive",
            "format=qcow2,if=virtio,file=/srv/tmp/.tmpJTjS8r/.tmp5pmgbg/vm.qcow2",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpiXZgfx/executor.tar,readonly=on",
            "-cdrom",
            "/srv/tmp/.tmpJTjS8r/.tmp5pmgbg/cloud_init.iso",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpiXZgfx/src.tar,readonly=on",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpiXZgfx/artifacts.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpiXZgfx/cache.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpiXZgfx/deps.tar,readonly=on",
            "-nodefaults",
            "-no-user-config",
        ],
    }
[2025-09-01T09:06:02Z DEBUG ambient_ci::qemu] QEMU finished OK
[2025-09-01T09:06:02Z DEBUG ambient_ci::qemu] run log:
    --------------------==========
    [2025-09-01T08:59:00Z TRACE ambient_execute_plan] ambient-execute-plan starts
    [2025-09-01T08:59:00Z DEBUG ambient_execute_plan] ambient-execute-plan starts
    [2025-09-01T08:59:00Z INFO  ambient_execute_plan] ambient-execute-plan starts
    [2025-09-01T08:59:00Z WARN  ambient_execute_plan] ambient-execute-plan starts
    [2025-09-01T08:59:00Z ERROR ambient_execute_plan] ambient-execute-plan 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
    
    
    RUN: Action Mkdir {
        pathname: "/workspace",
    }
    [2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace",
        }
    RUN: Action finished OK
    RUN: Action Mkdir {
        pathname: "/workspace/artifacts",
    }
    [2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace/artifacts",
        }
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
    [2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdc",
            directory: "/workspace/src",
        }
    [2025-09-01T08:59:00Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
    [2025-09-01T08:59:00Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
    [2025-09-01T08:59:00Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdf",
            directory: "/workspace/deps",
        }
    [2025-09-01T08:59:00Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
    [2025-09-01T08:59:02Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
    [2025-09-01T08:59:02Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vde",
            directory: "/workspace/cache",
        }
    [2025-09-01T08:59:02Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
    [2025-09-01T08:59:38Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
    [2025-09-01T08:59:38Z DEBUG ambient_ci::action] Plan::execute: Spawn {
            argv: [
                "find",
                "/workspace",
                "-maxdepth",
                "2",
                "-ls",
            ],
        }
    SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"]
           cwd=/workspace/src (exists? true)
           extra_env=[]
      2621441      4 drwxr-xr-x   6 root     root         4096 Sep  1 08:59 /workspace
      2621694      4 drwxr-xr-x   3 root     root         4096 Sep  1 08:58 /workspace/deps
      2621695      0 -rw-r--r--   1 root     root            0 Aug 31 15:59 /workspace/deps/.package-cache-mutate
      2621698      4 drwxr-xr-x   5 root     root         4096 Aug 31 15:59 /workspace/deps/registry
      2621696    112 -rw-r--r--   1 root     root       114688 Sep  1 08:58 /workspace/deps/.global-cache
      2621697      0 -rw-r--r--   1 root     root            0 Aug 31 15:59 /workspace/deps/.package-cache
      2621443      4 drwxr-xr-x  10 root     root         4096 Sep  1 08:58 /workspace/src
      2621520      4 -rw-r--r--   1 root     root         1713 Sep  1 08:58 /workspace/src/Cargo.toml
      2621682      4 -rw-r--r--   1 root     root         1188 Sep  1 08:58 /workspace/src/CONTRIBUTING.md
      2621502     36 -rw-r--r--   1 root     root        34789 Sep  1 08:58 /workspace/src/NEWS.md
      2621517      4 -rw-r--r--   1 root     root          970 Sep  1 08:58 /workspace/src/build.rs
      2621523      4 drwxr-xr-x   8 root     root         4096 Sep  1 08:58 /workspace/src/.git
      2621684      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/doc
      2621450      4 drwxr-xr-x   4 root     root         4096 Sep  1 08:58 /workspace/src/src
      2621516      8 -rw-r--r--   1 root     root         4796 Sep  1 08:58 /workspace/src/README.md
      2621447      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/.ambient
      2621496      4 -rw-r--r--   1 root     root          386 Sep  1 08:58 /workspace/src/cibtool.1
      2621515      4 -rw-r--r--   1 root     root          732 Sep  1 08:58 /workspace/src/ci-broker.yaml
      2621445      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/.radicle
      2621503      4 drwxr-xr-x   3 root     root         4096 Sep  1 08:58 /workspace/src/debian
      2621501      4 -rw-r--r--   1 root     root           10 Sep  1 08:58 /workspace/src/.envrc
      2621683     92 -rw-r--r--   1 root     root        90122 Sep  1 08:58 /workspace/src/Cargo.lock
      2621679     12 -rw-r--r--   1 root     root         9723 Sep  1 08:58 /workspace/src/LICENSE-APACHE
      2621519      4 -rw-r--r--   1 root     root           44 Sep  1 08:58 /workspace/src/.gitignore
      2621521      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/tests
      2621681      8 -rw-r--r--   1 root     root         6528 Sep  1 08:58 /workspace/src/flake.lock
      2621518      8 -rw-r--r--   1 root     root         5951 Sep  1 08:58 /workspace/src/flake.nix
      2621495     92 -rw-r--r--   1 root     root        90815 Sep  1 08:58 /workspace/src/ci-broker.md
      2621444      4 -rw-r--r--   1 root     root          440 Sep  1 08:58 /workspace/src/cib.1
      2621500      4 -rw-r--r--   1 root     root          257 Sep  1 08:58 /workspace/src/ci-broker.subplot
      2621449      4 -rw-r--r--   1 root     root         1079 Sep  1 08:58 /workspace/src/LICENSE-MIT
      2621680      4 -rw-r--r--   1 root     root          334 Sep  1 08:58 /workspace/src/Makefile
      2621497      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:58 /workspace/src/.cargo
      2621442      4 drwxr-xr-x   2 root     root         4096 Sep  1 08:59 /workspace/artifacts
      2645016      4 drwxr-xr-x   6 root     root         4096 Aug 31 16:09 /workspace/cache
      2653120      4 -rw-r--r--   1 root     root          218 Aug 31 16:03 /workspace/cache/.rustdoc_fingerprint.json
      2657083      4 drwxr-xr-x  12 root     root         4096 Aug 31 16:15 /workspace/cache/doc
      2645018      4 drwxr-xr-x   7 root     root         4096 Aug 31 16:18 /workspace/cache/debug
      2645017      4 drwxr-xr-x   2 root     root         4096 Aug 31 16:00 /workspace/cache/tmp
      2657082      4 -rw-r--r--   1 root     root         1034 Aug 31 16:15 /workspace/cache/.rustc_info.json
      2653121      4 drwxr-xr-x   7 root     root         4096 Aug 31 16:18 /workspace/cache/release
    RUN: Action finished OK
    RUN: Action CargoFmt
    [2025-09-01T08:59:38Z DEBUG ambient_ci::action] Plan::execute: CargoFmt
    SPAWN: argv=["cargo", "fmt", "--check"]
           cwd=/workspace/src (exists? true)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
    RUN: Action finished OK
    RUN: Action CargoClippy
    [2025-09-01T08:59:41Z DEBUG ambient_ci::action] Plan::execute: CargoClippy
    SPAWN: argv=["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
           cwd=/workspace/src (exists? true)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
       Compiling libc v0.2.175
       Compiling jobserver v0.1.33
       Compiling getrandom v0.2.15
       Compiling getrandom v0.3.2
       Compiling rand_core v0.6.4
       Compiling tempfile v3.19.1
       Compiling cc v1.2.18
       Compiling rand_chacha v0.3.1
       Compiling roadmap v0.7.0
        Checking ec25519 v0.1.0
       Compiling rand v0.8.5
        Checking cyphergraphy v0.3.0
        Checking cypheraddr v0.4.0
        Checking socks5-client v0.4.1
       Compiling tera v1.20.0
        Checking qcheck v1.0.0
        Checking cyphernet v0.5.2
        Checking ssh-key v0.6.7
       Compiling libz-sys v1.1.22
       Compiling libgit2-sys v0.17.0+1.8.1
       Compiling pikchr v0.1.4
       Compiling sqlite3-src v0.5.1
       Compiling filetime v0.2.25
       Compiling tar v0.4.44
       Compiling subplot v0.12.0
        Checking nix v0.29.0
        Checking fs_at v0.2.1
       Compiling subplot-build v0.12.0
       Compiling radicle-surf v0.22.1
       Compiling subplotlib-derive v0.12.0
       Compiling radicle-ci-broker v0.19.1 (/workspace/src)
        Checking remove_dir_all v1.0.0
        Checking uuid v1.16.0
        Checking fs2 v0.4.3
        Checking subplotlib v0.12.0
        Checking sqlite3-sys v0.15.2
        Checking sqlite v0.32.0
        Checking git2 v0.19.0
        Checking radicle-git-ext v0.8.1
        Checking radicle-crypto v0.12.0
        Checking radicle-cob v0.14.0
        Checking radicle v0.16.1
        Checking radicle-job v0.2.0
        Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.13s
    RUN: Action finished OK
    RUN: Action Shell {
        shell: "export CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /workspace/artifacts/.\n",
    }
    [2025-09-01T09:00:13Z DEBUG ambient_ci::action] Plan::execute: 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",
        }
    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)
           extra_env=[]
    + 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:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    + PATH=/root/.cargo/bin:/root/.radicle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    + rad --help
    + cargo doc --workspace --no-deps
        Checking cyphergraphy v0.3.0
        Checking radicle-git-ext v0.8.1
       Compiling radicle-ci-broker v0.19.1 (/workspace/src)
        Checking cypheraddr v0.4.0
        Checking radicle-surf v0.22.1
        Checking socks5-client v0.4.1
        Checking cyphernet v0.5.2
        Checking radicle-crypto v0.12.0
        Checking radicle-cob v0.14.0
        Checking radicle v0.16.1
        Checking radicle-job v0.2.0
     Documenting radicle-ci-broker v0.19.1 (/workspace/src)
    warning: unresolved link to `RunningProcess`
       --> src/adapter.rs:361:44
        |
    361 |     /// 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 7.96s
       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 libc v0.2.175
       Compiling getrandom v0.2.15
       Compiling getrandom v0.3.2
       Compiling sqlite3-src v0.5.1
       Compiling filetime v0.2.25
       Compiling rand_core v0.6.4
       Compiling tempfile v3.19.1
       Compiling tar v0.4.44
       Compiling rand_chacha v0.3.1
       Compiling rand v0.8.5
       Compiling roadmap v0.7.0
       Compiling radicle-surf v0.22.1
       Compiling tera v1.20.0
       Compiling libz-sys v1.1.22
       Compiling ec25519 v0.1.0
       Compiling libgit2-sys v0.17.0+1.8.1
       Compiling git2 v0.19.0
       Compiling cyphergraphy v0.3.0
       Compiling sqlite3-sys v0.15.2
       Compiling sqlite v0.32.0
       Compiling cypheraddr v0.4.0
       Compiling qcheck v1.0.0
       Compiling socks5-client v0.4.1
       Compiling subplot v0.12.0
       Compiling cyphernet v0.5.2
       Compiling ssh-key v0.6.7
       Compiling radicle-git-ext v0.8.1
       Compiling radicle-crypto v0.12.0
       Compiling nix v0.29.0
       Compiling radicle-cob v0.14.0
       Compiling subplot-build v0.12.0
       Compiling subplotlib-derive v0.12.0
       Compiling radicle-ci-broker v0.19.1 (/workspace/src)
       Compiling fs_at v0.2.1
       Compiling remove_dir_all v1.0.0
       Compiling radicle v0.16.1
       Compiling uuid v1.16.0
       Compiling fs2 v0.4.3
       Compiling subplotlib v0.12.0
       Compiling radicle-job v0.2.0
        Finished `test` profile [unoptimized + debuginfo] target(s) in 31.08s
         Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_ci_broker-c78c4b2b6b0a3425)
    
    running 85 tests
    test adapter::test::adapter_does_not_exist ... ok
    test adapter::test::adapter_ends_ok_before_second_message ... ok
    test adapter::test::adapter_first_message_isnt_triggered ... ok
    test adapter::test::adapter_exits_nonzero ... ok
    test adapter::test::adapter_has_bad_interpreter ... ok
    test adapter::test::adapter_is_killed_after_first_message ... 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_not_executable ... ok
    test adapter::test::adapter_outputs_too_many_messages ... ok
    test adapter::test::adapter_produces_as_bad_message ... ok
    test adapter::test::adapter_reports_failure ... ok
    test adapter::test::adapter_reports_success ... ok
    test broker::test::adapter_fails ... ok
    test 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 broker::test::executes_adapter ... ok
    test filter::test::only_allows_patch_creation ... ok
    test filter::test::only_allows_patch_update ... ok
    test filter::test::yaml_roundtrip ... ok
    test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok
    test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok
    test msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok
    test refs::test::creates_patch_from_str ... 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 msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok
    test refs::test::ref_string_from_plain_branch_name ... 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 run::test::serialize_run_state ... 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::sleep_for_too_long_while_reading_with_realtimelines ... ok
    test timeoutcmd::tests::yes_to_stderr ... ok
    test timeoutcmd::tests::yes_to_stdout ... ok
    test timeoutcmd::tests::yes_to_stdout_while_reading_with_realtimelines ... ok
    
    test result: ok. 85 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.45s
    
         Running unittests src/bin/cib.rs (/workspace/cache/debug/deps/cib-821e056b6b6c701c)
    
    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-db6fcd65156980ef)
    
    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-cbd812899974b5fd)
    
    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-453dba3e4fad77cb)
    
    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-f470dfa9517bc671)
    
    running 70 tests
    test adapter_with_url_runs_successfully ... ok
    test add_information_about_run_that_s_finished_in_failure_to_database ... ok
    test adapter_can_provide_url_for_info_on_run ... ok
    test add_information_about_run_that_s_finished_successfully_to_database ... ok
    test add_information_about_run_that_s_running_to_database ... ok
    test allows_setting_minimum_log_level ... ok
    test add_information_about_triggered_run_to_database ... ok
    test can_add_a_branch_creation_event_to_queue ... ok
    test can_add_a_branch_deletion_event_to_queue ... ok
    test can_add_a_branch_update_event_to_queue ... ok
    test can_add_a_patch_creation_event_to_queue ... ok
    test can_add_a_patch_update_event_to_queue ... ok
    test can_add_shutdown_event_to_queue ... ok
    test can_output_trigger_message_for_a_ci_run ... ok
    test can_remove_all_queued_events ... ok
    test can_trigger_a_ci_run ... ok
    test convert_recorded_node_events_into_ci_events ... ok
    test count_in_a_single_process ... ok
    test create_a_repository ... ok
    test don_t_insert_event_for_non_existent_repository ... ok
    test dummy_adapter_runs_successfully ... ok
    test event_synthesizer_terminates_after_first_connection ... ok
    test events_can_be_queued_and_removed_from_queue ... ok
    test extract_cib_log_from_journald_and_pretty_print ... ok
    test fails_run_if_building_trigger_fails__but_does_not_crash ... ok
    test count_in_concurrent_processes ... ok
    test filter_predicate_allow ... ok
    test filter_predicate_and ... ok
    test filter_predicate_branch ... ok
    test filter_predicate_branchdeleted ... ok
    test filter_predicate_branchcreated ... 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 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 filter_predicate_or ... 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 insert_many_events_into_queue ... ok
    test set_up_a_node ... ok
    test shows_adapter_specification ... ok
    test shows_config_as_json ... ok
    test shuts_down_when_requested ... ok
    test runs_adapters_for_all_matching_triggers ... ok
    test smoke_test__runs_adapter ... ok
    test stops_if_the_node_connection_breaks ... ok
    test we_can_run_rad ... ok
    test update_and_show_information_about_run_to_running ... ok
    
    test result: ok. 70 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 135.75s
    
       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 5.33s
    
    + 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
    make: Leaving directory '/workspace/src/doc'
    + cp doc/architecture.html doc/ci-broker.html doc/userguide.html /workspace/artifacts/.
    RUN: Action finished OK
    RUN: Action Custom(
        Custom {
            name: "dch",
            args: {
                "debfullname": String("Lars Wirzenius"),
                "debemail": String("liw@liw.fi"),
            },
        },
    )
    [2025-09-01T09:03:45Z DEBUG ambient_ci::action] Plan::execute: Custom(
            Custom {
                name: "dch",
                args: {
                    "debfullname": String("Lars Wirzenius"),
                    "debemail": String("liw@liw.fi"),
                },
            },
        )
    custom: source=/workspace/src
    custom: exe=".ambient/dch" exists=false
    HEAD is now at 27317200 fix: max_run_time setting in cib
    Removing doc/architecture.html
    Removing doc/ci-broker.html
    Removing doc/messages.md
    Removing doc/userguide.html
    custom action "dch" exit code Some(0)
    RUN: Action finished OK
    RUN: Action Deb
    [2025-09-01T09:03:45Z DEBUG ambient_ci::action] Plan::execute: Deb
    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)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
    + 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=275
    LANG=C.UTF-8
    CARGO_HOME=/workspace/deps
    DEBEMAIL=liw@liw.fi
    INVOCATION_ID=615c35b261934b5c918dd8c7a5104fe6
    SHLVL=2
    JOURNAL_STREAM=8:14727
    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.19.1.ci20250901T090345-1
    ++ sed 's/-[^-]*$//'
    ++ echo 0.19.1.ci20250901T090345-1
    + uv=0.19.1.ci20250901T090345
    ++ dpkg --print-architecture
    + arch=amd64
    + orig=../radicle-ci-broker_0.19.1.ci20250901T090345.orig.tar.xz
    + deb=../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb
    + changes=../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.changes
    + xz
    + git archive HEAD
    + dpkg-buildpackage -us -uc
    dpkg-buildpackage: info: source package radicle-ci-broker
    dpkg-buildpackage: info: source version 0.19.1.ci20250901T090345-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.19.1.ci20250901T090345.orig.tar.xz
    dpkg-source: info: building radicle-ci-broker in radicle-ci-broker_0.19.1.ci20250901T090345-1.debian.tar.xz
    dpkg-source: info: building radicle-ci-broker in radicle-ci-broker_0.19.1.ci20250901T090345-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.19.1 (/workspace/src)
       Compiling libc v0.2.175
       Compiling jobserver v0.1.33
       Compiling getrandom v0.2.15
       Compiling getrandom v0.3.2
       Compiling rand_core v0.6.4
       Compiling tempfile v3.19.1
       Compiling cc v1.2.18
       Compiling rand_chacha v0.3.1
       Compiling roadmap v0.7.0
       Compiling rand v0.8.5
       Compiling ec25519 v0.1.0
       Compiling tera v1.20.0
       Compiling libz-sys v1.1.22
       Compiling libgit2-sys v0.17.0+1.8.1
       Compiling pikchr v0.1.4
       Compiling sqlite3-src v0.5.1
       Compiling cyphergraphy v0.3.0
       Compiling cypheraddr v0.4.0
       Compiling socks5-client v0.4.1
       Compiling subplot v0.12.0
       Compiling cyphernet v0.5.2
       Compiling qcheck v1.0.0
       Compiling ssh-key v0.6.7
       Compiling filetime v0.2.25
       Compiling tar v0.4.44
       Compiling nix v0.29.0
       Compiling fs_at v0.2.1
       Compiling radicle-surf v0.22.1
       Compiling subplot-build v0.12.0
       Compiling radicle-ci-broker v0.19.1 (/workspace/src)
       Compiling remove_dir_all v1.0.0
       Compiling subplotlib-derive v0.12.0
       Compiling uuid v1.16.0
       Compiling fs2 v0.4.3
       Compiling subplotlib v0.12.0
       Compiling git2 v0.19.0
       Compiling sqlite3-sys v0.15.2
       Compiling sqlite v0.32.0
       Compiling radicle-git-ext v0.8.1
       Compiling radicle-crypto v0.12.0
       Compiling radicle-cob v0.14.0
       Compiling radicle v0.16.1
       Compiling radicle-job v0.2.0
        Finished `release` profile [optimized] target(s) in 1m 29s
      Installing debian/radicle-ci-broker/usr/bin/cib
      Installing debian/radicle-ci-broker/usr/bin/cibtool
       Installed package `radicle-ci-broker v0.19.1 (/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/cibtool debian/radicle-ci-broker/usr/bin/cib 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.19.1.ci20250901T090345-1_amd64.deb'.
    dpkg-deb: building package 'radicle-ci-broker-dbgsym' in '../radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb'.
     dpkg-genbuildinfo -O../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.buildinfo
     dpkg-genchanges -O../radicle-ci-broker_0.19.1.ci20250901T090345-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 6772
    drwxr-xr-x  2 root root    4096 Sep  1 09:03 artifacts
    drwxr-xr-x  6 root root    4096 Aug 31 16:09 cache
    drwxr-xr-x  3 root root    4096 Sep  1 09:03 deps
    -rw-r--r--  1 root root  677180 Sep  1 09:05 radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb
    -rw-r--r--  1 root root    2288 Sep  1 09:03 radicle-ci-broker_0.19.1.ci20250901T090345-1.debian.tar.xz
    -rw-r--r--  1 root root    1078 Sep  1 09:03 radicle-ci-broker_0.19.1.ci20250901T090345-1.dsc
    -rw-r--r--  1 root root    6326 Sep  1 09:05 radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.buildinfo
    -rw-r--r--  1 root root    2634 Sep  1 09:05 radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.changes
    -rw-r--r--  1 root root 6079688 Sep  1 09:05 radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb
    -rw-r--r--  1 root root  134896 Sep  1 09:03 radicle-ci-broker_0.19.1.ci20250901T090345.orig.tar.xz
    drwxr-xr-x 10 root root    4096 Sep  1 09:03 src
    + for x in ../*.deb
    + dpkg -c ../radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/.build-id/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/.build-id/62/
    -rw-r--r-- root/root   2641888 2025-09-01 09:03 ./usr/lib/debug/.build-id/62/4b91910b8fb1ef9312e633911bc8c5fdf1f097.debug
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/lib/debug/.build-id/a1/
    -rw-r--r-- root/root   2886216 2025-09-01 09:03 ./usr/lib/debug/.build-id/a1/d4146b95b8a0886ab57121dfb687c2f135b930.debug
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/doc/
    lrwxrwxrwx root/root         0 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker-dbgsym -> radicle-ci-broker
    + for x in ../*.deb
    + dpkg -c ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/bin/
    -rwxr-xr-x root/root  10769288 2025-09-01 09:03 ./usr/bin/cib
    -rwxr-xr-x root/root  11551032 2025-09-01 09:03 ./usr/bin/cibtool
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/doc/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker/
    -rw-r--r-- root/root       621 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker/changelog.Debian.gz
    -rw-r--r-- root/root       396 2025-09-01 09:03 ./usr/share/doc/radicle-ci-broker/copyright
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/lintian/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/lintian/overrides/
    -rw-r--r-- root/root       120 2025-09-01 09:03 ./usr/share/lintian/overrides/radicle-ci-broker
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/man/
    drwxr-xr-x root/root         0 2025-09-01 09:03 ./usr/share/man/man1/
    -rw-r--r-- root/root       298 2025-09-01 09:03 ./usr/share/man/man1/cib.1.gz
    -rw-r--r-- root/root       277 2025-09-01 09:03 ./usr/share/man/man1/cibtool.1.gz
    + mv ../radicle-ci-broker-dbgsym_0.19.1.ci20250901T090345-1_amd64.deb ../radicle-ci-broker_0.19.1.ci20250901T090345-1.debian.tar.xz ../radicle-ci-broker_0.19.1.ci20250901T090345-1.dsc ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.buildinfo ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.changes ../radicle-ci-broker_0.19.1.ci20250901T090345-1_amd64.deb ../radicle-ci-broker_0.19.1.ci20250901T090345.orig.tar.xz /workspace/artifacts
    RUN: Action finished OK
    RUN: Action TarCreate {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
    [2025-09-01T09:05:31Z DEBUG ambient_ci::action] Plan::execute: TarCreate {
            archive: "/dev/vde",
            directory: "/workspace/cache",
        }
    [2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder {
            filename: Some(
                "/dev/vde",
            ),
            root: Some(
                "/workspace/cache",
            ),
            size: None,
        }
    [2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vde; exists? true
    [2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] create archive file /dev/vde
    [2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] directory /workspace/cache exists? true
    [2025-09-01T09:05:31Z TRACE ambient_ci::vdrive] add contents of /workspace/cache as .
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] created virtual drive /dev/vde
    RUN: Action finished OK
    RUN: Action TarCreate {
        archive: "/dev/vdd",
        directory: "/workspace/artifacts",
    }
    [2025-09-01T09:05:58Z DEBUG ambient_ci::action] Plan::execute: TarCreate {
            archive: "/dev/vdd",
            directory: "/workspace/artifacts",
        }
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] creating virtual drive (tar archive): VirtualDriveBuilder {
            filename: Some(
                "/dev/vdd",
            ),
            root: Some(
                "/workspace/artifacts",
            ),
            size: None,
        }
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] tar archive to be created: /dev/vdd; exists? true
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] create archive file /dev/vdd
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] directory /workspace/artifacts exists? true
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] add contents of /workspace/artifacts as .
    [2025-09-01T09:05:58Z TRACE ambient_ci::vdrive] created virtual drive /dev/vdd
    RUN: Action finished OK
    ambient-execute-plan ends
    EXIT CODE: 0
    
    ====================
[2025-09-01T09:06:02Z DEBUG ambient_ci::qemu] QEMU exit code 0
[2025-09-01T09:06:02Z DEBUG ambient_ci::run] remove old cache
[2025-09-01T09:06:03Z DEBUG ambient_ci::run] extract cache
[2025-09-01T09:06:19Z DEBUG ambient_ci::run] Executing post-plan steps
[2025-09-01T09:06:19Z DEBUG ambient_ci::project] write project state to /srv/ambient-state/rad:zwTxygwuz5LDGBq255RA2CbNGrz8/meta.yaml
[2025-09-01T09:06:20Z INFO  ambient] ambient ends successfully

Ambient stderr

<empty log>