CI run for obnam

Radicle repository id rad:zbWNQYkQ4QKgdSQcd1tjaemv6d6x

Triggered by

{
  "request": "trigger",
  "version": 1,
  "event_type": "patch",
  "repository": {
    "id": "rad:zbWNQYkQ4QKgdSQcd1tjaemv6d6x",
    "name": "obnam",
    "description": "Explore implementation of backup fundamentals",
    "private": false,
    "default_branch": "main",
    "delegates": [
      "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV"
    ]
  },
  "action": "Created",
  "patch": {
    "id": "2b128bc622ffd3c668e019e5cddcf3db2c35bd2f",
    "author": {
      "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
      "alias": "liw"
    },
    "title": "chunk store on local disk",
    "state": {
      "status": "open",
      "conflicts": []
    },
    "before": "a8ad35956fdcd825aeb4751aee247d5a5eb1d5a2",
    "after": "235c64af86f072924d1d9ba1232516f5cd95f3e2",
    "commits": [
      "235c64af86f072924d1d9ba1232516f5cd95f3e2",
      "871a807f73f7a70b350be6026280dafec04836cd",
      "09d43ba4cf92d010d255bed2aae820dc1311181e",
      "31e62f9c0d3a8405fa6948407b4e097612714cc5",
      "ce1efbf3ca137561f1118e491f2b8e5172eaace8",
      "9440cb38b0017dd5f9c61aefb4319060c583c92a",
      "5ef143f384f797338a4942db52c2fd598a7d071f",
      "129d4c0e7f3d53f88360d77f8e166166d03e1f43",
      "25a16a7108291713476c133b720d27283f09c585",
      "70489d85a3dac3c1c1336e7fbce147576cf96862",
      "77bfc7e8d2ef9c99ad5ce454de88f9c771b40eda",
      "74029b37490af90714e42ce29db0ce2d3a1530ad"
    ],
    "target": "a8ad35956fdcd825aeb4751aee247d5a5eb1d5a2",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "2b128bc622ffd3c668e019e5cddcf3db2c35bd2f",
        "author": {
          "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
          "alias": "liw"
        },
        "description": "",
        "base": "a8ad35956fdcd825aeb4751aee247d5a5eb1d5a2",
        "oid": "235c64af86f072924d1d9ba1232516f5cd95f3e2",
        "timestamp": 1747552133
      }
    ]
  }
}

Run log

[2025-05-18T07:09:35Z INFO  ambient] ambient starts
[=3h[=3hBdsDxe: failed to load Boot0001 "UEFI QEMU DVD-ROM QM00003 " from PciRoot(0x0)/Pci(0x1,0x1)/Ata(Secondary,Master,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: Extracting tar archive from /dev/vdb
./
./plan.yaml
./run-ci

INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
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_clippy
- action: cargo_build
- action: shell
  shell: |
    export PATH=/root/.cargo/bin:/bin:/sbin
    export CARGO_TARGET_DIR=/workspace/cache
    make subplot
- 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",
}
RUN: Action finished OK
RUN: Action Mkdir {
    pathname: "/workspace/artifacts",
}
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdc",
    directory: "/workspace/src",
}
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdf",
    directory: "/workspace/deps",
}
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
RUN: Action finished OK
RUN: Action Spawn {
    argv: [
        "find",
        "/workspace",
        "-maxdepth",
        "2",
        "-ls",
    ],
}
SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"]
       cwd=/workspace/src (exists? true)
       extra_env=[]
  6029313      4 drwxr-xr-x   6 root     root         4096 May 18 07:09 /workspace
  6029401      4 drwxr-xr-x   3 root     root         4096 May 18 07:09 /workspace/deps
  6029402     56 -rw-r--r--   1 root     root        57344 May 18 07:09 /workspace/deps/.global-cache
  6029403      0 -rw-r--r--   1 root     root            0 Apr  9 04:08 /workspace/deps/.package-cache
  6029404      4 drwxr-xr-x   5 root     root         4096 Apr  9 04:08 /workspace/deps/registry
  6034873      4 drwxr-xr-x   3 root     root         4096 Apr  9 04:08 /workspace/cache
  6038490      4 -rw-r--r--   1 root     root         1034 May 18 04:15 /workspace/cache/.rustc_info.json
  6034874      4 drwxr-xr-x   7 root     root         4096 May 18 04:15 /workspace/cache/debug
  6029316      4 drwxr-xr-x   5 root     root         4096 May 18 07:08 /workspace/src
  6029397      4 -rw-r--r--   1 root     root         1458 May 18 07:08 /workspace/src/obnam.md
  6029317      4 drwxr-xr-x   2 root     root         4096 May 18 07:08 /workspace/src/.radicle
  6029331      4 -rw-r--r--   1 root     root           22 May 18 07:08 /workspace/src/.gitignore
  6029333      4 -rw-r--r--   1 root     root          717 May 18 07:08 /workspace/src/obnam.py
  6029332      4 -rw-r--r--   1 root     root          408 May 18 07:08 /workspace/src/Cargo.toml
  6029319      4 drwxr-xr-x   3 root     root         4096 May 18 07:08 /workspace/src/src
  6029396      4 -rw-r--r--   1 root     root          300 May 18 07:08 /workspace/src/Makefile
  6029400      4 -rw-r--r--   1 root     root          224 May 18 07:08 /workspace/src/obnam.subplot
  6029399     24 -rw-r--r--   1 root     root        21690 May 18 07:08 /workspace/src/Cargo.lock
  6029330      4 -rw-r--r--   1 root     root          189 May 18 07:08 /workspace/src/README.md
  6029334      4 drwxr-xr-x   8 root     root         4096 May 18 07:08 /workspace/src/.git
  6029398      4 -rw-r--r--   1 root     root          163 May 18 07:08 /workspace/src/obnam.yaml
  6029315      4 drwxr-xr-x   2 root     root         4096 May 18 07:09 /workspace/artifacts
RUN: Action finished OK
RUN: Action 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 rustix v1.0.3
   Compiling pkg-config v0.3.32
   Compiling vcpkg v0.2.15
    Checking foldhash v0.1.5
    Checking hashbrown v0.15.3
    Checking fallible-streaming-iterator v0.1.9
   Compiling libsqlite3-sys v0.33.0
    Checking fallible-iterator v0.3.0
    Checking hashlink v0.10.0
    Checking smallvec v1.15.0
    Checking fastrand v2.3.0
    Checking once_cell v1.21.1
    Checking rusqlite v0.35.0
    Checking terminal_size v0.4.2
    Checking tempfile v3.20.0
    Checking clap_builder v4.5.32
    Checking clap v4.5.32
    Checking obnam v0.1.0 (/workspace/src)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.83s
RUN: Action finished OK
RUN: Action CargoBuild
SPAWN: argv=["cargo", "build", "--offline", "--locked", "--workspace", "--all-targets"]
       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 rustix v1.0.3
   Compiling foldhash v0.1.5
   Compiling libsqlite3-sys v0.33.0
   Compiling fastrand v2.3.0
   Compiling hashbrown v0.15.3
   Compiling once_cell v1.21.1
   Compiling fallible-streaming-iterator v0.1.9
   Compiling fallible-iterator v0.3.0
   Compiling smallvec v1.15.0
   Compiling hashlink v0.10.0
   Compiling rusqlite v0.35.0
   Compiling terminal_size v0.4.2
   Compiling clap_builder v4.5.32
   Compiling tempfile v3.20.0
   Compiling clap v4.5.32
   Compiling obnam v0.1.0 (/workspace/src)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.71s
RUN: Action finished OK
RUN: Action Shell {
    shell: "export PATH=/root/.cargo/bin:/bin:/sbin\nexport CARGO_TARGET_DIR=/workspace/cache\nmake subplot\n",
}
SPAWN: argv=["/bin/bash", "-c", "set -xeuo pipefail\nexport PATH=/root/.cargo/bin:/bin:/sbin\nexport CARGO_TARGET_DIR=/workspace/cache\nmake subplot\n\n"]
       cwd=/workspace/src (exists? true)
       extra_env=[]
+ export PATH=/root/.cargo/bin:/bin:/sbin
+ PATH=/root/.cargo/bin:/bin:/sbin
+ export CARGO_TARGET_DIR=/workspace/cache
+ CARGO_TARGET_DIR=/workspace/cache
+ make subplot
subplot docgen obnam.subplot --output obnam.html
 INFO Starting Subplot
 INFO Subplot finished successfully
rm -f test.py test.log
subplot codegen obnam.subplot --output test.py
 INFO Starting Subplot
 INFO Subplot finished successfully
python3 test.py --log test.log
srcdir /workspace/src
datadir /tmp/tmpb0xi3f1d
scenario: Chunk encrypt/decrypt round trip
  step: given an installed obnam
  step: given file greeting.txt
  step: when I run obnam chunk encrypt --key secret --label sticky.tape greeting.txt --output chunk.file
  step: when I run obnam chunk decrypt --key secret chunk.file
  step: then stdout is exactly "Hello, world.\n"
scenario: Inspect an encoded chunk
  step: given an installed obnam
  step: given file greeting.txt
  step: when I run obnam chunk encrypt --label sticky.tape --key secret greeting.txt --output chunk.file
  step: when I run obnam chunk inspect chunk.file
  step: then stdout is valid JSON
  step: then stdout contains ""id":"
  step: then stdout contains ""label":"
  step: then stdout contains ""data": null"
  step: when I run obnam chunk inspect chunk.file --key secret
  step: then stdout is valid JSON
  step: then stdout contains ""id":"
  step: then stdout contains ""label":"
  step: then stdout contains ""data": ""
OK, all scenarios finished successfully
RUN: Action finished OK
RUN: Action TarCreate {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
RUN: Action finished OK
RUN: Action TarCreate {
    archive: "/dev/vdd",
    directory: "/workspace/artifacts",
}
RUN: Action finished OK
ambient-execute-plan ends
EXIT CODE: 0
[2025-05-18T07:09:35Z INFO  ambient] ambient ends successfully