Skip to content

refactor(vm): separate rootfs materialization#2388

Draft
elezar wants to merge 2 commits into
mainfrom
codex/rootfs-provisioner-poc
Draft

refactor(vm): separate rootfs materialization#2388
elezar wants to merge 2 commits into
mainfrom
codex/rootfs-provisioner-poc

Conversation

@elezar

@elezar elezar commented Jul 21, 2026

Copy link
Copy Markdown
Member

Summary

Separate the VM driver's existing image acquisition and ext4 rootfs materialization concerns, then make Docker and Podman explicit local image-source variants. This provides a concrete VM-driver boundary for future provisioning work without changing current image-selection behavior.

Related Issue

Related to #2255

Changes

  • Add VM-local UnpackedImage, RootfsMaterializationRequest, VmRootfsImage, and VmRootfsMaterializer types.
  • Route both existing local-container and registry rootfs cache paths through the materializer.
  • Preserve Docker-first, Podman-fallback selection while reporting Docker and Podman as distinct local image sources.
  • Update compute-runtime architecture documentation.

Testing

  • mise run pre-commit passes (intentionally deferred)
  • Unit tests added/updated: cargo test -p openshell-driver-vm --lib (121 passed)
  • E2E tests added/updated (not applicable to this refactor)

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)

elezar added 2 commits July 20, 2026 12:45
Signed-off-by: Evan Lezar <elezar@nvidia.com>
Signed-off-by: Evan Lezar <elezar@nvidia.com>
@copy-pr-bot

copy-pr-bot Bot commented Jul 21, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@elezar elezar added the test:e2e Requires end-to-end coverage label Jul 21, 2026
@github-actions

Copy link
Copy Markdown

Label test:e2e applied, but pull-request/2388 is at {"messa while the PR head is 5832a22. A maintainer needs to comment /ok to test 5832a22df06fadb259a1e790798bf2d6e80ecde8 to refresh the mirror. Once the mirror catches up, re-run Branch E2E Checks from the Actions tab.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:e2e Requires end-to-end coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant