[multipass] use stdio to get data in/out of Multipass
Metadata
Current evaluation
Merged PR #2784 (commit 888707cf3) replaced the Multipass `--cloud-init` file transfer with stdio-based push_file/pull_file for strict Multipass support; later moved into craft-providers.
Resolution: closed resolved
Reason: The PR was merged into snapcraft in commit 888707cf3, switching Multipass data transfer to stdio, splitting the helper into push_file and pull_file, and dropping --cloud-init support so builds work against strict Multipass. The functionality now lives in the external craft-providers MultipassProvider.
Evaluated by: mr-cal-bot
No scores available.
Issue body
With Multipass going strict, that's the reliable way.
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh tests/unit`?
I've not found a better way around [LP#1849753](https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1849753).
This does build the Multipass snap on strict Multipass from `snap refresh --channel edge/pr1074` fine.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2784 (commit 888707cf3) replaced the Multipass `--cloud-init` file transfer with stdio-based push_file/pull_file for strict Multipass support; later moved into craft-providers. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #2784 in commit 888707cf3: switched Multipass data transfer to stdio, split push_file/pull_file, and removed --cloud-init support for strict Multipass. | |
| qwen/qwen3.6-35b-a3b | — | — | Switched Multipass data transfer to stdio for reliable operation under strict confinement. Refactored into push_file and pull_file functions, removed --cloud-init support. Approved and merged after passing CI checks. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged after refactoring into push_file and pull_file functions. Switches Multipass data transfer to stdio for reliable operation under strict confinement, resolving LP#1849753 and removing cloud-init support. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/craft-providers
(confidence 70%)
The stdio-based push_file/pull_file implementation was later extracted; current snapcraft code delegates to craft_providers.multipass.MultipassProvider.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #193 MultipassInstance: `push_file_io()` method works regardless of working dir | craft-providers | merged | Merged PR #193 in commit a41d0b4, fixing MultipassInstance.push_file_io() to work regardless of host working-directory permissions; released in craft-providers 1.7.0. |