CI run for radicle-job

Radicle repository id rad:z2UcCU1LgMshWvXj6hXSDDrwB8q8M

Table of Contents

Run log

[2025-08-08T09:43:57Z 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.8M  1 disk 
vdc    254:32   0   850K  1 disk 
vdd    254:48   0   9.3G  0 disk 
vde    254:64   0  46.6G  0 disk 
vdf    254:80   0 204.5M  1 disk 
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad         0 2025-08-08 09:41 ./
-rw-r--r-- _rad/_rad       859 2025-08-08 09:41 ./plan.yaml
-rwxr-xr-x _rad/_rad   2949784 2025-08-08 09:41 ./run-ci
INFO: Extracted files:
  1477881      4 drwxr-xr-x   2 1001     1001         4096 Aug  8 09:41 .
  1477809      4 -rw-r--r--   1 1001     1001          859 Aug  8 09:41 ./plan.yaml
  1477810   2884 -rwxr-xr-x   1 1001     1001      2949784 Aug  8 09:41 ./run-ci
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
[2025-08-08T09:42:04Z TRACE ambient_execute_plan] ambient-execute-plan starts
[2025-08-08T09:42:04Z DEBUG ambient_execute_plan] ambient-execute-plan starts
[2025-08-08T09:42:04Z INFO  ambient_execute_plan] ambient-execute-plan starts
[2025-08-08T09:42:04Z WARN  ambient_execute_plan] ambient-execute-plan starts
[2025-08-08T09:42:04Z 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: cargo_test
- 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-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace",
    }
RUN: Action finished OK
RUN: Action Mkdir {
    pathname: "/workspace/artifacts",
}
[2025-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace/artifacts",
    }
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdc",
    directory: "/workspace/src",
}
[2025-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
[2025-08-08T09:42:04Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
[2025-08-08T09:42:04Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdf",
    directory: "/workspace/deps",
}
[2025-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
[2025-08-08T09:42:04Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
[2025-08-08T09:42:19Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
[2025-08-08T09:42:19Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
[2025-08-08T09:42:19Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
[2025-08-08T09:42:47Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action Spawn {
    argv: [
        "find",
        "/workspace",
        "-maxdepth",
        "2",
        "-ls",
    ],
}
[2025-08-08T09:42:47Z 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=[]
  3932161      4 drwxr-xr-x   6 root     root         4096 Aug  8 09:42 /workspace
  3932162      4 drwxr-xr-x   2 root     root         4096 Aug  8 09:42 /workspace/artifacts
  3932579      4 drwxr-xr-x   4 root     root         4096 Aug  8 09:41 /workspace/deps
  3932607     92 -rw-r--r--   1 root     root        94208 Aug  8 09:41 /workspace/deps/.global-cache
  3932581      4 drwxr-xr-x   4 root     root         4096 Jun  7 11:03 /workspace/deps/git
  3932580      0 -rw-r--r--   1 root     root            0 Jun 28 04:02 /workspace/deps/.package-cache-mutate
  3932608      0 -rw-r--r--   1 root     root            0 Jun  7 11:03 /workspace/deps/.package-cache
  3932609      4 drwxr-xr-x   5 root     root         4096 Jun  7 11:03 /workspace/deps/registry
  3932163      4 drwxr-xr-x   5 root     root         4096 Aug  8 09:41 /workspace/src
  3932164      4 drwxr-xr-x   2 root     root         4096 Aug  8 09:41 /workspace/src/.radicle
  3932578     56 -rw-r--r--   1 root     root        53696 Aug  8 09:41 /workspace/src/Cargo.lock
  3932176      4 -rw-r--r--   1 root     root          957 Aug  8 09:41 /workspace/src/Cargo.toml
  3932174      4 -rw-r--r--   1 root     root         3086 Aug  8 09:41 /workspace/src/flake.nix
  3932577      4 -rw-r--r--   1 root     root         2465 Aug  8 09:41 /workspace/src/flake.lock
  3932175      4 -rw-r--r--   1 root     root            8 Aug  8 09:41 /workspace/src/.gitignore
  3932177      4 drwxr-xr-x   8 root     root         4096 Aug  8 09:41 /workspace/src/.git
  3932172      4 -rw-r--r--   1 root     root           10 Aug  8 09:41 /workspace/src/.envrc
  3932173      8 -rw-r--r--   1 root     root         5059 Aug  8 09:41 /workspace/src/README.md
  3932166      4 drwxr-xr-x   3 root     root         4096 Aug  8 09:41 /workspace/src/src
  3944093      4 drwxr-xr-x   3 root     root         4096 Jun  7 11:04 /workspace/cache
  3944094      4 drwxr-xr-x   7 root     root         4096 Jun  7 11:04 /workspace/cache/debug
  3952982      4 -rw-r--r--   1 root     root         1034 Aug  5 12:58 /workspace/cache/.rustc_info.json
RUN: Action finished OK
RUN: Action CargoFmt
[2025-08-08T09:42:48Z 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-08-08T09:42:51Z 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 proc-macro2 v1.0.95
   Compiling unicode-ident v1.0.18
   Compiling version_check v0.9.5
   Compiling libc v0.2.172
   Compiling typenum v1.18.0
   Compiling generic-array v0.14.7
    Checking cfg-if v1.0.0
    Checking subtle v2.6.1
   Compiling quote v1.0.40
   Compiling syn v2.0.101
   Compiling serde v1.0.219
    Checking stable_deref_trait v1.2.0
   Compiling jobserver v0.1.33
   Compiling shlex v1.3.0
   Compiling cc v1.2.22
   Compiling syn v1.0.109
    Checking crypto-common v0.1.6
   Compiling pkg-config v0.3.32
    Checking block-buffer v0.10.4
    Checking block-padding v0.3.3
    Checking cpufeatures v0.2.17
    Checking inout v0.1.4
    Checking digest v0.10.7
    Checking cipher v0.4.4
    Checking getrandom v0.2.16
    Checking writeable v0.6.1
   Compiling thiserror v1.0.69
    Checking litemap v0.8.0
   Compiling icu_normalizer_data v2.0.0
   Compiling icu_properties_data v2.0.0
   Compiling vcpkg v0.2.15
    Checking bitflags v2.9.0
   Compiling amplify_syn v2.0.1
    Checking universal-hash v0.5.1
   Compiling proc-macro-error-attr v1.0.4
   Compiling synstructure v0.13.2
   Compiling libz-sys v1.1.22
    Checking smallvec v1.15.0
    Checking signature v1.6.4
    Checking opaque-debug v0.3.1
   Compiling amplify_derive v4.0.1
    Checking ed25519 v1.5.3
   Compiling proc-macro-error v1.0.4
    Checking ascii v1.1.0
    Checking amplify_num v0.5.3
   Compiling zerofrom-derive v0.1.6
   Compiling yoke-derive v0.8.0
   Compiling serde_derive v1.0.219
    Checking zerofrom v0.1.6
   Compiling zerovec-derive v0.11.1
    Checking yoke v0.8.0
   Compiling displaydoc v0.2.5
    Checking zerovec v0.11.2
    Checking zerotrie v0.2.2
   Compiling thiserror-impl v1.0.69
    Checking tinystr v0.8.1
    Checking icu_locale_core v2.0.0
    Checking potential_utf v0.1.2
    Checking icu_collections v2.0.0
    Checking ct-codecs v1.1.5
    Checking icu_provider v2.0.0
    Checking ec25519 v0.1.0
    Checking icu_properties v2.0.0
    Checking icu_normalizer v2.0.0
    Checking amplify v4.8.1
    Checking polyval v0.6.2
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling sqlite3-src v0.5.1
    Checking sha2 v0.10.9
    Checking utf8_iter v1.0.4
    Checking percent-encoding v2.3.1
    Checking idna_adapter v1.2.1
   Compiling rustix v1.0.7
    Checking base64ct v1.7.3
    Checking byteorder v1.5.0
    Checking keccak v0.1.5
    Checking sha3 v0.10.8
    Checking pem-rfc7468 v0.7.0
    Checking idna v1.0.3
    Checking form_urlencoded v1.2.1
    Checking ghash v0.5.1
   Compiling git-ref-format-core v0.3.1
    Checking cyphergraphy v0.3.0
    Checking rand_core v0.6.4
    Checking ctr v0.9.2
    Checking aes v0.8.4
    Checking aead v0.5.2
    Checking linux-raw-sys v0.9.4
    Checking log v0.4.27
   Compiling data-encoding v2.9.0
    Checking base32 v0.4.0
    Checking cypheraddr v0.4.0
    Checking aes-gcm v0.10.3
   Compiling data-encoding-macro-internal v0.1.16
   Compiling git-ref-format-macro v0.3.1
    Checking ssh-encoding v0.2.0
    Checking url v2.5.4
    Checking blowfish v0.9.1
    Checking poly1305 v0.8.0
    Checking chacha20 v0.9.1
    Checking cbc v0.1.2
    Checking pbkdf2 v0.12.2
    Checking zeroize v1.8.1
    Checking fastrand v2.3.0
   Compiling typeid v1.0.3
   Compiling getrandom v0.3.3
    Checking data-encoding-macro v0.1.18
    Checking bcrypt-pbkdf v0.10.0
    Checking git-ref-format v0.3.1
    Checking socks5-client v0.4.1
    Checking ssh-cipher v0.2.0
    Checking rand v0.8.5
   Compiling serde_json v1.0.140
    Checking radicle-std-ext v0.1.1
    Checking equivalent v1.0.2
    Checking signature v2.2.0
    Checking base-x v0.2.11
   Compiling crossbeam-utils v0.8.21
    Checking hashbrown v0.15.3
    Checking utf8parse v0.2.2
    Checking anstyle-parse v0.2.7
    Checking qcheck v1.0.0
    Checking indexmap v2.9.0
    Checking multibase v0.9.1
    Checking ssh-key v0.6.7
    Checking cyphernet v0.5.2
    Checking radicle-ssh v0.9.0
    Checking itoa v1.0.15
    Checking tinyvec_macros v0.1.1
    Checking memchr v2.7.4
    Checking anstyle v1.0.11
    Checking ryu v1.0.20
    Checking colorchoice v1.0.4
    Checking is_terminal_polyfill v1.70.1
    Checking once_cell v1.21.3
    Checking anstyle-query v1.1.3
    Checking anstream v0.6.19
    Checking tinyvec v1.9.0
    Checking erased-serde v0.4.6
    Checking radicle-dag v0.10.0
    Checking terminal_size v0.4.2
    Checking nonempty v0.9.0
   Compiling thiserror v2.0.12
   Compiling heck v0.5.0
    Checking strsim v0.11.1
    Checking clap_lex v0.7.5
   Compiling clap_derive v4.5.41
    Checking clap_builder v4.5.41
    Checking crossbeam-channel v0.5.15
    Checking serde-untagged v0.1.7
    Checking unicode-normalization v0.1.24
    Checking tempfile v3.20.0
    Checking bytesize v2.0.1
    Checking localtime v1.3.1
   Compiling thiserror-impl v2.0.12
    Checking siphasher v1.0.1
    Checking base64 v0.21.7
    Checking clap v4.5.41
    Checking uuid v1.16.0
    Checking nonempty v0.11.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.1.0 (/workspace/src)
error: hiding a lifetime that's elided elsewhere is confusing
  --> src/bin/rad-job.rs:91:15
   |
91 | fn jobs(repo: &Repository) -> Result<Jobs<Repository>, error::Jobs> {
   |               ^^^^^^^^^^^            ---------------- the same lifetime is hidden here
   |               |
   |               the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `-D mismatched-lifetime-syntaxes` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(mismatched_lifetime_syntaxes)]`
help: use `'_` for type paths
   |
91 | fn jobs(repo: &Repository) -> Result<Jobs<'_, Repository>, error::Jobs> {
   |                                           +++

error: could not compile `radicle-job` (bin "rad-job") due to 1 previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile `radicle-job` (bin "rad-job" test) due to 1 previous error
ERROR: Action failed: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
ERROR: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
EXIT CODE: 1
[2025-08-08T09:43:57Z INFO  ambient] ambient ends successfully

Trigger message

{
  "request": "trigger",
  "version": 1,
  "event_type": "push",
  "repository": {
    "id": "rad:z2UcCU1LgMshWvXj6hXSDDrwB8q8M",
    "name": "radicle-job",
    "description": "Radicle Job Collaborative Object",
    "private": false,
    "default_branch": "main",
    "delegates": [
      "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM"
    ]
  },
  "pusher": {
    "id": "did:key:z6MkkYez6QAFWvmdudjrfMXySu1NTpSrraJotCJFwGgkmgx8",
    "alias": "ci0"
  },
  "before": "b9d8df7d33df0db25f05a6696935eb0e6f82ae57",
  "after": "b9d8df7d33df0db25f05a6696935eb0e6f82ae57",
  "branch": "main",
  "commits": [
    "b9d8df7d33df0db25f05a6696935eb0e6f82ae57"
  ]
}

Ambient stdout

[2025-08-08T09:41:12Z INFO  ambient] ambient starts
[2025-08-08T09:41:12Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists
[2025-08-08T09:41:12Z DEBUG ambient] load files named with --config: /tmp/.tmpkZEUav/ambient_extra_values.yaml
[2025-08-08T09:41:12Z 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: Some(
            "ci@http.liw.fi:/srv/http",
        ),
        rsync_target_map: None,
        dput_target: Some(
            "apt.liw.fi",
        ),
        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-08-08T09:41:12Z 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: Some(
            "ci@http.liw.fi:/srv/http",
        ),
        rsync_target_map: None,
        dput_target: Some(
            "apt.liw.fi",
        ),
        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-08-08T09:41:12Z DEBUG ambient_ci::project] load project state from /srv/ambient-state/radicle-job/meta.yaml
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] latest commit: "b9d8df7d33df0db25f05a6696935eb0e6f82ae57"
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] is a git repository
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] git repository is clean
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] current (HEAD) commit: b9d8df7d33df0db25f05a6696935eb0e6f82ae57
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] no dry run requested
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] forced run requested
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] run? true
[2025-08-08T09:41:12Z INFO  ambient_ci::run] project radicle-job: running CI
[2025-08-08T09:41:12Z DEBUG ambient_ci::run] Executing pre-plan steps
[2025-08-08T09:41:12Z DEBUG ambient_ci::action] Plan::execute: CargoFetch {
        sourcedir: "/tmp/.tmpzV1j3v/src",
        dependenciesdir: "/srv/ambient-state/radicle-job/dependencies",
    }
SPAWN: argv=["env", "CARGO_HOME=/srv/ambient-state/radicle-job/dependencies", "cargo", "fetch", "--locked"]
       cwd=/tmp/.tmpzV1j3v/src (exists? true)
       extra_env=[]
[2025-08-08T09:41:13Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpl0yPPm/src.tar
[2025-08-08T09:41:13Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpl0yPPm/deps.tar
[2025-08-08T09:41:20Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan"
[2025-08-08T09:41:20Z 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,
            CargoTest,
            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-08-08T09:41:20Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan
[2025-08-08T09:41:20Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /srv/tmp/.tmpl0yPPm/ambient-execute-plan/run-ci
[2025-08-08T09:41:20Z DEBUG ambient_ci::run] copy OK: true
[2025-08-08T09:41:20Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpl0yPPm/executor.tar
[2025-08-08T09:41:45Z DEBUG ambient_ci::project] removing run log file /srv/ambient-state/radicle-job/run.log
[2025-08-08T09:41:45Z DEBUG ambient_ci::project] statedir is /srv/ambient-state/radicle-job, exists? true
[2025-08-08T09:41:45Z DEBUG ambient_ci::project] creating run log file /srv/ambient-state/radicle-job/run.log
[2025-08-08T09:41:45Z DEBUG ambient_ci::project] created run log file /srv/ambient-state/radicle-job/run.log OK
[2025-08-08T09:41:45Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient"
[2025-08-08T09:41:45Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1"
[2025-08-08T09:41:45Z 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-08-08T09:41:45Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff"
[2025-08-08T09:41:45Z 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-08-08T09:41:45Z DEBUG ambient_ci::qemu] run QEMU
[2025-08-08T09:41:45Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file
[2025-08-08T09:41:45Z DEBUG ambient_ci::qemu_utils] qemu-img create /srv/tmp/.tmpB3n37j/.tmpleLtUE/vm.qcow2 backing on /home/_rad/ambient.qcow2
[2025-08-08T09:41:45Z DEBUG ambient_ci::qemu] create cloud-init ISO file
[2025-08-08T09:41:45Z 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-08-08T09:41:45Z DEBUG ambient_ci::cloud_init] write /tmp/.tmp0H99Ht/meta-data
[2025-08-08T09:41:45Z DEBUG ambient_ci::cloud_init] write /tmp/.tmp0H99Ht/user-data
[2025-08-08T09:41:45Z DEBUG ambient_ci::qemu] set console log file to /srv/tmp/.tmpB3n37j/.tmpleLtUE/console.log
[2025-08-08T09:41:45Z DEBUG ambient_ci::util] create file /srv/tmp/.tmpB3n37j/.tmpleLtUE/console.log
[2025-08-08T09:41:45Z DEBUG ambient_ci::qemu] set run file to /srv/ambient-state/radicle-job/run.log
[2025-08-08T09:41:45Z DEBUG ambient_ci::util] create file /srv/ambient-state/radicle-job/run.log
[2025-08-08T09:41:45Z 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/.tmpB3n37j/.tmpleLtUE/console.log",
            "-serial",
            "file:/srv/ambient-state/radicle-job/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/.tmpB3n37j/.tmpleLtUE/vars.fd",
            "-drive",
            "format=qcow2,if=virtio,file=/srv/tmp/.tmpB3n37j/.tmpleLtUE/vm.qcow2",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpl0yPPm/executor.tar,readonly=on",
            "-cdrom",
            "/srv/tmp/.tmpB3n37j/.tmpleLtUE/cloud_init.iso",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpl0yPPm/src.tar,readonly=on",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpl0yPPm/artifacts.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpl0yPPm/cache.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpl0yPPm/deps.tar,readonly=on",
            "-nodefaults",
            "-no-user-config",
        ],
    }
[2025-08-08T09:43:57Z DEBUG ambient_ci::qemu] QEMU finished OK
[2025-08-08T09:43:57Z DEBUG ambient_ci::qemu] run log:
    --------------------==========
    [2025-08-08T09:42:04Z TRACE ambient_execute_plan] ambient-execute-plan starts
    [2025-08-08T09:42:04Z DEBUG ambient_execute_plan] ambient-execute-plan starts
    [2025-08-08T09:42:04Z INFO  ambient_execute_plan] ambient-execute-plan starts
    [2025-08-08T09:42:04Z WARN  ambient_execute_plan] ambient-execute-plan starts
    [2025-08-08T09:42:04Z 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: cargo_test
    - 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-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace",
        }
    RUN: Action finished OK
    RUN: Action Mkdir {
        pathname: "/workspace/artifacts",
    }
    [2025-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace/artifacts",
        }
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
    [2025-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdc",
            directory: "/workspace/src",
        }
    [2025-08-08T09:42:04Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
    [2025-08-08T09:42:04Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
    [2025-08-08T09:42:04Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdf",
            directory: "/workspace/deps",
        }
    [2025-08-08T09:42:04Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
    [2025-08-08T09:42:19Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
    [2025-08-08T09:42:19Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vde",
            directory: "/workspace/cache",
        }
    [2025-08-08T09:42:19Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
    [2025-08-08T09:42:47Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
    [2025-08-08T09:42:47Z 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=[]
      3932161      4 drwxr-xr-x   6 root     root         4096 Aug  8 09:42 /workspace
      3932162      4 drwxr-xr-x   2 root     root         4096 Aug  8 09:42 /workspace/artifacts
      3932579      4 drwxr-xr-x   4 root     root         4096 Aug  8 09:41 /workspace/deps
      3932607     92 -rw-r--r--   1 root     root        94208 Aug  8 09:41 /workspace/deps/.global-cache
      3932581      4 drwxr-xr-x   4 root     root         4096 Jun  7 11:03 /workspace/deps/git
      3932580      0 -rw-r--r--   1 root     root            0 Jun 28 04:02 /workspace/deps/.package-cache-mutate
      3932608      0 -rw-r--r--   1 root     root            0 Jun  7 11:03 /workspace/deps/.package-cache
      3932609      4 drwxr-xr-x   5 root     root         4096 Jun  7 11:03 /workspace/deps/registry
      3932163      4 drwxr-xr-x   5 root     root         4096 Aug  8 09:41 /workspace/src
      3932164      4 drwxr-xr-x   2 root     root         4096 Aug  8 09:41 /workspace/src/.radicle
      3932578     56 -rw-r--r--   1 root     root        53696 Aug  8 09:41 /workspace/src/Cargo.lock
      3932176      4 -rw-r--r--   1 root     root          957 Aug  8 09:41 /workspace/src/Cargo.toml
      3932174      4 -rw-r--r--   1 root     root         3086 Aug  8 09:41 /workspace/src/flake.nix
      3932577      4 -rw-r--r--   1 root     root         2465 Aug  8 09:41 /workspace/src/flake.lock
      3932175      4 -rw-r--r--   1 root     root            8 Aug  8 09:41 /workspace/src/.gitignore
      3932177      4 drwxr-xr-x   8 root     root         4096 Aug  8 09:41 /workspace/src/.git
      3932172      4 -rw-r--r--   1 root     root           10 Aug  8 09:41 /workspace/src/.envrc
      3932173      8 -rw-r--r--   1 root     root         5059 Aug  8 09:41 /workspace/src/README.md
      3932166      4 drwxr-xr-x   3 root     root         4096 Aug  8 09:41 /workspace/src/src
      3944093      4 drwxr-xr-x   3 root     root         4096 Jun  7 11:04 /workspace/cache
      3944094      4 drwxr-xr-x   7 root     root         4096 Jun  7 11:04 /workspace/cache/debug
      3952982      4 -rw-r--r--   1 root     root         1034 Aug  5 12:58 /workspace/cache/.rustc_info.json
    RUN: Action finished OK
    RUN: Action CargoFmt
    [2025-08-08T09:42:48Z 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-08-08T09:42:51Z 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 proc-macro2 v1.0.95
       Compiling unicode-ident v1.0.18
       Compiling version_check v0.9.5
       Compiling libc v0.2.172
       Compiling typenum v1.18.0
       Compiling generic-array v0.14.7
        Checking cfg-if v1.0.0
        Checking subtle v2.6.1
       Compiling quote v1.0.40
       Compiling syn v2.0.101
       Compiling serde v1.0.219
        Checking stable_deref_trait v1.2.0
       Compiling jobserver v0.1.33
       Compiling shlex v1.3.0
       Compiling cc v1.2.22
       Compiling syn v1.0.109
        Checking crypto-common v0.1.6
       Compiling pkg-config v0.3.32
        Checking block-buffer v0.10.4
        Checking block-padding v0.3.3
        Checking cpufeatures v0.2.17
        Checking inout v0.1.4
        Checking digest v0.10.7
        Checking cipher v0.4.4
        Checking getrandom v0.2.16
        Checking writeable v0.6.1
       Compiling thiserror v1.0.69
        Checking litemap v0.8.0
       Compiling icu_normalizer_data v2.0.0
       Compiling icu_properties_data v2.0.0
       Compiling vcpkg v0.2.15
        Checking bitflags v2.9.0
       Compiling amplify_syn v2.0.1
        Checking universal-hash v0.5.1
       Compiling proc-macro-error-attr v1.0.4
       Compiling synstructure v0.13.2
       Compiling libz-sys v1.1.22
        Checking smallvec v1.15.0
        Checking signature v1.6.4
        Checking opaque-debug v0.3.1
       Compiling amplify_derive v4.0.1
        Checking ed25519 v1.5.3
       Compiling proc-macro-error v1.0.4
        Checking ascii v1.1.0
        Checking amplify_num v0.5.3
       Compiling zerofrom-derive v0.1.6
       Compiling yoke-derive v0.8.0
       Compiling serde_derive v1.0.219
        Checking zerofrom v0.1.6
       Compiling zerovec-derive v0.11.1
        Checking yoke v0.8.0
       Compiling displaydoc v0.2.5
        Checking zerovec v0.11.2
        Checking zerotrie v0.2.2
       Compiling thiserror-impl v1.0.69
        Checking tinystr v0.8.1
        Checking icu_locale_core v2.0.0
        Checking potential_utf v0.1.2
        Checking icu_collections v2.0.0
        Checking ct-codecs v1.1.5
        Checking icu_provider v2.0.0
        Checking ec25519 v0.1.0
        Checking icu_properties v2.0.0
        Checking icu_normalizer v2.0.0
        Checking amplify v4.8.1
        Checking polyval v0.6.2
       Compiling libgit2-sys v0.17.0+1.8.1
       Compiling sqlite3-src v0.5.1
        Checking sha2 v0.10.9
        Checking utf8_iter v1.0.4
        Checking percent-encoding v2.3.1
        Checking idna_adapter v1.2.1
       Compiling rustix v1.0.7
        Checking base64ct v1.7.3
        Checking byteorder v1.5.0
        Checking keccak v0.1.5
        Checking sha3 v0.10.8
        Checking pem-rfc7468 v0.7.0
        Checking idna v1.0.3
        Checking form_urlencoded v1.2.1
        Checking ghash v0.5.1
       Compiling git-ref-format-core v0.3.1
        Checking cyphergraphy v0.3.0
        Checking rand_core v0.6.4
        Checking ctr v0.9.2
        Checking aes v0.8.4
        Checking aead v0.5.2
        Checking linux-raw-sys v0.9.4
        Checking log v0.4.27
       Compiling data-encoding v2.9.0
        Checking base32 v0.4.0
        Checking cypheraddr v0.4.0
        Checking aes-gcm v0.10.3
       Compiling data-encoding-macro-internal v0.1.16
       Compiling git-ref-format-macro v0.3.1
        Checking ssh-encoding v0.2.0
        Checking url v2.5.4
        Checking blowfish v0.9.1
        Checking poly1305 v0.8.0
        Checking chacha20 v0.9.1
        Checking cbc v0.1.2
        Checking pbkdf2 v0.12.2
        Checking zeroize v1.8.1
        Checking fastrand v2.3.0
       Compiling typeid v1.0.3
       Compiling getrandom v0.3.3
        Checking data-encoding-macro v0.1.18
        Checking bcrypt-pbkdf v0.10.0
        Checking git-ref-format v0.3.1
        Checking socks5-client v0.4.1
        Checking ssh-cipher v0.2.0
        Checking rand v0.8.5
       Compiling serde_json v1.0.140
        Checking radicle-std-ext v0.1.1
        Checking equivalent v1.0.2
        Checking signature v2.2.0
        Checking base-x v0.2.11
       Compiling crossbeam-utils v0.8.21
        Checking hashbrown v0.15.3
        Checking utf8parse v0.2.2
        Checking anstyle-parse v0.2.7
        Checking qcheck v1.0.0
        Checking indexmap v2.9.0
        Checking multibase v0.9.1
        Checking ssh-key v0.6.7
        Checking cyphernet v0.5.2
        Checking radicle-ssh v0.9.0
        Checking itoa v1.0.15
        Checking tinyvec_macros v0.1.1
        Checking memchr v2.7.4
        Checking anstyle v1.0.11
        Checking ryu v1.0.20
        Checking colorchoice v1.0.4
        Checking is_terminal_polyfill v1.70.1
        Checking once_cell v1.21.3
        Checking anstyle-query v1.1.3
        Checking anstream v0.6.19
        Checking tinyvec v1.9.0
        Checking erased-serde v0.4.6
        Checking radicle-dag v0.10.0
        Checking terminal_size v0.4.2
        Checking nonempty v0.9.0
       Compiling thiserror v2.0.12
       Compiling heck v0.5.0
        Checking strsim v0.11.1
        Checking clap_lex v0.7.5
       Compiling clap_derive v4.5.41
        Checking clap_builder v4.5.41
        Checking crossbeam-channel v0.5.15
        Checking serde-untagged v0.1.7
        Checking unicode-normalization v0.1.24
        Checking tempfile v3.20.0
        Checking bytesize v2.0.1
        Checking localtime v1.3.1
       Compiling thiserror-impl v2.0.12
        Checking siphasher v1.0.1
        Checking base64 v0.21.7
        Checking clap v4.5.41
        Checking uuid v1.16.0
        Checking nonempty v0.11.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.1.0 (/workspace/src)
    error: hiding a lifetime that's elided elsewhere is confusing
      --> src/bin/rad-job.rs:91:15
       |
    91 | fn jobs(repo: &Repository) -> Result<Jobs<Repository>, error::Jobs> {
       |               ^^^^^^^^^^^            ---------------- the same lifetime is hidden here
       |               |
       |               the lifetime is elided here
       |
       = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
       = note: `-D mismatched-lifetime-syntaxes` implied by `-D warnings`
       = help: to override `-D warnings` add `#[allow(mismatched_lifetime_syntaxes)]`
    help: use `'_` for type paths
       |
    91 | fn jobs(repo: &Repository) -> Result<Jobs<'_, Repository>, error::Jobs> {
       |                                           +++
    
    error: could not compile `radicle-job` (bin "rad-job") due to 1 previous error
    warning: build failed, waiting for other jobs to finish...
    error: could not compile `radicle-job` (bin "rad-job" test) due to 1 previous error
    ERROR: Action failed: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
    ERROR: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
    EXIT CODE: 1
    
    ====================
[2025-08-08T09:43:57Z DEBUG ambient_ci::qemu] QEMU exit code 1
ERROR: failed to run actions in QEMU

Ambient stderr

<empty log>