Skip to content

feat: add Apple container backend for patchbay-vm#7

Merged
Frando merged 6 commits intomainfrom
arqu/apple_container
Mar 25, 2026
Merged

feat: add Apple container backend for patchbay-vm#7
Frando merged 6 commits intomainfrom
arqu/apple_container

Conversation

@Arqu
Copy link
Contributor

@Arqu Arqu commented Mar 24, 2026

Add an alternative VM backend using Apple's Containerization framework (macOS 26 + Apple Silicon). The container backend provides sub-second boot times and native VirtioFS mounts, replacing QEMU's SSH-based interaction with container exec.

  • Split vm.rs into common.rs (shared types/helpers), qemu.rs (QEMU backend), and container.rs (Apple container backend)
  • Add --backend auto|qemu|container flag with auto-detection
  • Default to all host CPUs and 8GB RAM for both backends
  • Update docs/guide/vm.md with setup guides for both backends
  • Add .container-vm and .tmp to .gitignore

Add an alternative VM backend using Apple's Containerization framework
(macOS 26 + Apple Silicon). The container backend provides sub-second
boot times and native VirtioFS mounts, replacing QEMU's SSH-based
interaction with `container exec`.

- Split vm.rs into common.rs (shared types/helpers), qemu.rs (QEMU
  backend), and container.rs (Apple container backend)
- Add --backend auto|qemu|container flag with auto-detection
- Default to all host CPUs and 8GB RAM for both backends
- Update docs/guide/vm.md with setup guides for both backends
- Add .container-vm and .tmp to .gitignore
@Arqu Arqu requested review from Frando and dignifiedquire March 24, 2026 11:32
@Arqu Arqu self-assigned this Mar 24, 2026
@Frando
Copy link
Member

Frando commented Mar 24, 2026

Cool! Do you know if we can run this on CI? Not the full suite but just a smoke test so that we don't break it accidentally.

Arqu added 2 commits March 24, 2026 12:44
- Add macos-check job on self-hosted macOS ARM64 runner
- Move e2e to self-hosted Linux runner
- Switch all jobs to sccache
- Smoke test runs iperf sim via container backend when CLI is available
@Arqu
Copy link
Contributor Author

Arqu commented Mar 24, 2026

Bumped the CI work in general. macOS has provisions but this will need some more attention on the runners from my side, will file an issue to follow up at some point.

@Arqu
Copy link
Contributor Author

Arqu commented Mar 24, 2026

Seems some of the tests are flaky.

@Frando
Copy link
Member

Frando commented Mar 24, 2026

Seems some of the tests are flaky.

Think we have to reduce concurrency. Or increase some ulimits or such, but I'm not yet sure which ones. The failure indicates some limits are being hit I think.

@Arqu
Copy link
Contributor Author

Arqu commented Mar 25, 2026

I'll take a look at it trying to figure it out. This fine to merge now?

@Frando Frando merged commit 674b80b into main Mar 25, 2026
5 of 6 checks passed
@Arqu Arqu deleted the arqu/apple_container branch March 26, 2026 13:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants