feat: in-cluster vm support#2781
Draft
chance-coleman wants to merge 2 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Draft PR for team review and demonstration. Surfaces the approach and remaining product decisions before anything merges.
What's included
Core changes (land regardless of product decision):
virt-launcherand CDI-generated pods (scoped, not namespace-wide)spec.kubevirt.enabledon the UDS Package CRD; the operator labels the namespace automaticallyNew:
packages/kubevirt/— KubeVirt + CDI platform package with chart, tasks, and test suitebundles/k3d-kubevirt-dev/— dev bundle extending k3d-slim-dev for local experimentationdocs/concepts/core-features/virtual-machines.mdxanddocs/how-to-guides/virtual-machines/— full guide series following existing UDS Core doc patternsOpen questions (blocking merge)
packages/kubevirt/live in this repo or a separate product? The Pepr/CRD changes land in Core either way.unicorn. Non-unicorn flavors are paused pending the product boundary decision.Testing locally
Full end-to-end demo on k3d (requires KVM or emulation mode):
This creates a k3d cluster, builds and deploys the bundle, and runs the full task suite (health check, container-disk VM, live migration, and the full UDS-managed VM app test).
Validation
Full task suite passes on a two-node k3d cluster with real KVM. CI runs with QEMU emulation. L2 networking, cross-cluster disk movement, and Windows VM platform mechanics are manually validated only.