test(spread): stabilize Ubuntu 26.04 charm spread uv/platforms tasks
Metadata
Current evaluation
Merged fix stabilizing Ubuntu 26.04 spread tests by switching charmcraft pack to managed mode, adding a src/charm.py fixture, and restoring dispatch in expected artifacts. CI passed and reviewers approved.
Suggested action: —
No scores available.
Issue body
Ubuntu 26.04 spread charm tasks were failing in `charm:uv` and `charm:platforms` when `charmcraft pack --destructive-mode` attempted host APT resolution for build dependencies (`python3-venv` / `python3-dev`).
This PR updates the Ubuntu 26.04 charm spread task to run `pack` without destructive mode, and aligns the `uv` fixture so `dispatch` is generated as expected.
- **Scope**
- `tests/spread/ubuntu-26.04/charm/task.yaml`
- `tests/spread/ubuntu-26.04/charm/uv/expected_files.txt`
- `tests/spread/ubuntu-26.04/charm/uv/src/charm.py`
- **Behavior change**
- Switches Ubuntu 26.04 charm spread execution from host-mode packing to managed packing.
- Ensures the Ubuntu 26.04 `uv` test fixture contains `src/charm.py`, satisfying dispatch generation preconditions.
- Restores `dispatch` in the Ubuntu 26.04 `uv` expected packed artifact list.
- **Patch**
```bash
# tests/spread/ubuntu-26.04/charm/task.yaml
# before
charmcraft pack --destructive-mode
# after
charmcraft pack
```
```text
# tests/spread/ubuntu-26.04/charm/uv/expected_files.txt
# includes
dispatch
```
```python
# tests/spread/ubuntu-26.04/charm/uv/src/charm.py
# added minimal charm entrypoint fixture
```
Relevant PR run: https://github.com/canonical/charmcraft/actions/runs/26215674898/job/77140798859?pr=2697
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged fix stabilizing Ubuntu 26.04 spread tests by switching charmcraft pack to managed mode, adding a src/charm.py fixture, and restoring dispatch in expected artifacts. CI passed and reviewers approved. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Fixed failing Ubuntu 26.04 spread tests by switching charmcraft pack to managed mode, adding a src/charm.py fixture, and restoring dispatch in expected output. Resolved test assertions without UI changes. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Stabilized Ubuntu 26.04 charm spread tasks by switching to managed packing, adding a src/charm.py fixture to guarantee dispatch generation, and updating expected artifact lists. Resolved test failures without UI changes. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1324 test(spread): test-deploy charms in large spread tests | charmcraft | merged | Merged to add test deployment for charms and bundles in large spread tests. Approved by two reviewers, modified six files with 85 additions and 26 deletions, and linked to a passing CI run. | |
| #1287 fix(tests): fixes bundle spread test | charmcraft | merged | Merged. Resolves issue #1262 and CRAFT-2052 by fixing the bundle spread test. Replaced a failing charm path check with Python-based YAML validation. Approved by two reviewers, passed CI, and successfully executed the large spread test. | |
| #1427 tests(spread): make dependencies restore work even if no charm is built | charmcraft | merged | Merged a one-line change ensuring spread test dependencies restore correctly when no charm is built. Approved by two reviewers and successfully integrated. | |
| #2426 fix(test): fix the reactive charm spread test | charmcraft | merged | Merged a one-line fix for the reactive charm spread test. Approved by two reviewers and passed CI checks. Resolves CHARMCRAFT-641. | |
| #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. | |
| #6018 fix(craft-test): enable spread tests with 26.04 backends | snapcraft | merged | Merged a fix enabling spread tests for Ubuntu 26.04 backends by routing to the ubuntu-daily remote. This temporary workaround resolves CRAFT-4996, with a permanent fix tracked in CRAFT-5002. Approved and passed CI. | |
| #1556 refactor(tests/spread): test with explicit charmcraft.yaml files | charmcraft | merged | Merged a refactor replacing dynamic charmcraft.yaml manipulation during the prepare step with explicit configuration files. Approved by three reviewers, the change simplifies testing for upcoming variants across nine modified files. | |
| #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. |