tests: add initial spread testing
Metadata
Current evaluation
Merged following approval by three reviewers. Adds initial spread testing infrastructure across 13 files, resolving issue #226. Validation confirms all 10 test tasks passed successfully on Ubuntu 20.04 and 22.04 LXD environments.
Suggested action: —
No scores available.
Issue body
Result from the spread session:
```
$ spread -v lxd-vm
2024-10-14 08:42:54 Found /home/claudio/distro/fetch-service/spread.yaml.
2024-10-14 08:42:56 Project content is packed for delivery (57.47MB).
2024-10-14 08:42:56 Sequence of jobs produced with -seed=1728906176
2024-10-14 08:42:56 If killed, discard servers with: spread -reuse-pid=1112326 -discard
2024-10-14 08:42:56 Allocating lxd-vm:ubuntu-20.04...
2024-10-14 08:42:56 Allocating lxd-vm:ubuntu-22.04...
2024-10-14 08:43:12 Waiting for lxd-vm:ubuntu-22.04 to make SSH available at 10.15.143.2...
2024-10-14 08:43:12 Allocated lxd-vm:ubuntu-22.04.
2024-10-14 08:43:12 Connecting to lxd-vm:ubuntu-22.04...
2024-10-14 08:43:12 Connected to lxd-vm:ubuntu-22.04 at 10.15.143.2.
2024-10-14 08:43:12 Sending project content to lxd-vm:ubuntu-22.04...
2024-10-14 08:43:13 Preparing lxd-vm:ubuntu-22.04 (lxd-vm:ubuntu-22.04)...
2024-10-14 08:43:19 Waiting for lxd-vm:ubuntu-20.04 to make SSH available at 10.15.143.164...
2024-10-14 08:43:19 Allocated lxd-vm:ubuntu-20.04.
2024-10-14 08:43:19 Connecting to lxd-vm:ubuntu-20.04...
2024-10-14 08:43:19 Connected to lxd-vm:ubuntu-20.04 at 10.15.143.164.
2024-10-14 08:43:19 Sending project content to lxd-vm:ubuntu-20.04...
2024-10-14 08:43:20 Preparing lxd-vm:ubuntu-20.04 (lxd-vm:ubuntu-20.04)...
2024-10-14 08:43:39 Preparing lxd-vm:ubuntu-22.04:tests/spread/general/snap-config (lxd-vm:ubuntu-22.04)...
2024-10-14 08:43:39 Executing lxd-vm:ubuntu-22.04:tests/spread/general/snap-config (lxd-vm:ubuntu-22.04) (1/10)...
2024-10-14 08:43:46 Preparing lxd-vm:ubuntu-20.04:tests/spread/general/basic-inspection:strict (lxd-vm:ubuntu-20.04)...
2024-10-14 08:43:48 Executing lxd-vm:ubuntu-20.04:tests/spread/general/basic-inspection:strict (lxd-vm:ubuntu-20.04) (2/10)...
2024-10-14 08:43:49 Restoring lxd-vm:ubuntu-22.04:tests/spread/general/snap-config (lxd-vm:ubuntu-22.04)...
2024-10-14 08:43:50 Preparing lxd-vm:ubuntu-22.04:tests/spread/general/upgrade-revert (lxd-vm:ubuntu-22.04)...
2024-10-14 08:43:50 Executing lxd-vm:ubuntu-22.04:tests/spread/general/upgrade-revert (lxd-vm:ubuntu-22.04) (3/10)...
2024-10-14 08:43:55 Restoring lxd-vm:ubuntu-20.04:tests/spread/general/basic-inspection:strict (lxd-vm:ubuntu-20.04)...
2024-10-14 08:43:55 Preparing lxd-vm:ubuntu-20.04:tests/spread/general/snap-config (lxd-vm:ubuntu-20.04)...
2024-10-14 08:43:56 Executing lxd-vm:ubuntu-20.04:tests/spread/general/snap-config (lxd-vm:ubuntu-20.04) (4/10)...
2024-10-14 08:44:00 Restoring lxd-vm:ubuntu-22.04:tests/spread/general/upgrade-revert (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:01 Preparing lxd-vm:ubuntu-22.04:tests/spread/general/update-config (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:04 Executing lxd-vm:ubuntu-22.04:tests/spread/general/update-config (lxd-vm:ubuntu-22.04) (5/10)...
2024-10-14 08:44:05 Restoring lxd-vm:ubuntu-20.04:tests/spread/general/snap-config (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:06 Preparing lxd-vm:ubuntu-20.04:tests/spread/general/basic-inspection:permissive (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:08 Executing lxd-vm:ubuntu-20.04:tests/spread/general/basic-inspection:permissive (lxd-vm:ubuntu-20.04) (6/10)...
2024-10-14 08:44:09 Restoring lxd-vm:ubuntu-22.04:tests/spread/general/update-config (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:10 Preparing lxd-vm:ubuntu-22.04:tests/spread/general/basic-inspection:strict (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:12 Executing lxd-vm:ubuntu-22.04:tests/spread/general/basic-inspection:strict (lxd-vm:ubuntu-22.04) (7/10)...
2024-10-14 08:44:15 Restoring lxd-vm:ubuntu-20.04:tests/spread/general/basic-inspection:permissive (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:15 Preparing lxd-vm:ubuntu-20.04:tests/spread/general/upgrade-revert (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:15 Executing lxd-vm:ubuntu-20.04:tests/spread/general/upgrade-revert (lxd-vm:ubuntu-20.04) (8/10)...
2024-10-14 08:44:19 Restoring lxd-vm:ubuntu-22.04:tests/spread/general/basic-inspection:strict (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:20 Preparing lxd-vm:ubuntu-22.04:tests/spread/general/basic-inspection:permissive (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:22 Executing lxd-vm:ubuntu-22.04:tests/spread/general/basic-inspection:permissive (lxd-vm:ubuntu-22.04) (9/10)...
2024-10-14 08:44:25 Restoring lxd-vm:ubuntu-20.04:tests/spread/general/upgrade-revert (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:26 Preparing lxd-vm:ubuntu-20.04:tests/spread/general/update-config (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:28 Executing lxd-vm:ubuntu-20.04:tests/spread/general/update-config (lxd-vm:ubuntu-20.04) (10/10)...
2024-10-14 08:44:30 Restoring lxd-vm:ubuntu-22.04:tests/spread/general/basic-inspection:permissive (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:32 Restoring lxd-vm:ubuntu-22.04 (lxd-vm:ubuntu-22.04)...
2024-10-14 08:44:32 Discarding lxd-vm:ubuntu-22.04...
2024-10-14 08:44:33 Restoring lxd-vm:ubuntu-20.04:tests/spread/general/update-config (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:34 Restoring lxd-vm:ubuntu-20.04 (lxd-vm:ubuntu-20.04)...
2024-10-14 08:44:34 Discarding lxd-vm:ubuntu-20.04...
2024-10-14 08:44:35 Successful tasks: 10
2024-10-14 08:44:35 Aborted tasks: 0
```
Fixes: #226
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
CRAFT-3444
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged following approval by three reviewers. Adds initial spread testing infrastructure across 13 files, resolving issue #226. Validation confirms all 10 test tasks passed successfully on Ubuntu 20.04 and 22.04 LXD environments. |
Update history
| Date | Change |
|---|---|
| created |
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2983 tests: add LXD spread test | snapcraft | merged | Merged after reviewer approval and passing CI checks. Added LXD spread test to verify LXD builds and installs. Modified two files with 29 added lines. | |
| #1155 test(spread): add Ubuntu 26.04/26.10 support to spread backends | craft-application | merged | Merged. Adds Ubuntu 26.04/26.10 to spread backends, updates distro-support, removes disabled lxd backend, adjusts fixtures, and skips a clock-rollback check on newer systemd. Approved and passed CI. | |
| #302 test(spread): switch to testing in destructive mode | imagecraft | merged | Switched spread tests to destructive mode and merged. This addresses an upcoming losetup requirement that temporarily breaks the LXD backend. Approved by two reviewers with passing CI checks. | |
| #2631 spread tests: enable LXD build provider tests | snapcraft | merged | Merged into master. Enabled LXD build provider tests by relocating setup to the early prepare phase to reduce overhead and consolidating declarations from task.yaml to spread.yaml. Approved, passed CI, and increased coverage by 0.01%. | |
| #5856 fix(spread): pack with lxd for core20 base tests | snapcraft | merged | Merged after two approvals. Updates spread tests to pack with LXD for core20 base tests. CI passed with one non-blocking schema diff failure. Related core20 and snapd test failures were resolved in separate PRs. | |
| #694 tests(spread): use LXD from `5.21/candidate` | rockcraft | merged | Updated spread tests to use LXD from 5.21/candidate, resolving main branch breakage from overlay filesystem mounting regressions. Establishes a stable testing baseline against LTS regressions. Merged after approval and passing CI. | |
| #2525 test(spread): enable Ubuntu 25.10 and 26.04 spread runners | charmcraft | merged | Merged after two approvals. Enables Ubuntu 25.10 and 26.04 spread runners, fixing issue #2480. Updates one file (+10/-9 lines). CI passed for relevant targets; legacy test failures and type-check warnings were non-blocking. | |
| #202 tests: bump lxd to 5.11 in spread tests | rockcraft | merged | Merged update bumping LXD in spread tests to 5.11, resolving installation failures from the unlisted 5.9 snap channel. Approved by two reviewers and passed CI. | |
| #13 test(spread): add more spread tests | snapcraft-rocks | merged | Successfully merged spread tests covering architectures, chisel slices, craftctl, package-repositories, and patchelf. Approved by two reviewers across 15 files (+206/-5 lines). | |
| #3026 spread tests: add core20 and cleanup systems | snapcraft | merged | Merged. Added core20 support to spread tests, cleaned up system selection logic to exclusively install snaps, and introduced a dedicated environment for unit tests. A reported test failure was promptly fixed by the author before approval and merge. |