Repository navigation
openvmm: track feature/microvm/dev on microsoft/openvmm - #610
Merged
Pedro Henrique Penna (ppenna) merged 1 commit intoOct 20, 2026
Merged
Conversation
The OpenVMM microVM work now lives on the feature/microvm/dev branch of microsoft/openvmm, so take the submodule from there instead of from the main branch of nanvix/openvmm. The pinned revision, d0bdbed8f6e3, is the tip of that branch, so the gitlink does not change. The checkout-openvmm action named nanvix/openvmm itself rather than following .gitmodules, so CI now checks OpenVMM out of microsoft/openvmm. It already fetches over HTTPS with the job token, since no OPENVMM_DEPLOY_KEY secret is set, and the repository is public. The Specula adapter rejects a release tag whose .gitmodules URL differs from its source_url, and requires the pinned revision on its source_branch, so it now takes the same repository and branch. Its runner must point the origin of its cached OpenVMM repository at the new URL once, and release tags that predate this change no longer pass its origin check. The documentation that names the submodule's source follows, and doc/contribute.md notes that a checkout made before the move fetches from nanvix/openvmm until git submodule sync adopts the new URL. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
The coordinated source settings are consistent, the pinned revision is unchanged, and no blocking issues remain.
No open issues 🎉
What changed in this PR
Redirects NVX’s OpenVMM integration to microsoft/openvmm on feature/microvm/dev, preserving the pinned revision.
Changes:
- Updates submodule, CI checkout, and Specula source settings.
- Aligns documentation and contributor guidance with the new source.
- Documents URL synchronization for existing checkouts.
| File | Description |
|---|---|
doc/project-structure.md |
Updates the submodule source description. |
doc/contribute.md |
Updates contribution routing and checkout migration guidance. |
aci_edge_sandboxes/README.md |
Updates the dependency access reference. |
.gitmodules |
Sets the new repository URL and tracked branch. |
.github/specula/README.md |
Aligns source and ancestry-check descriptions. |
.github/specula/guidance.md |
Updates the verification target repository. |
.github/specula/config.json |
Updates source settings and target label. |
.github/copilot-instructions.md |
Aligns repository guidance. |
.github/actions/checkout-openvmm/action.yml |
Checks out OpenVMM from Microsoft’s repository. |
Review effort: Balanced
Pedro Henrique Penna (ppenna)
deleted the
agents/sync-microvm-branches-to-openvmm
branch
October 20, 2026 03:36
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.
Track OpenVMM from microsoft/openvmm
feature/microvm/devThe OpenVMM microVM work now lives in microsoft/openvmm. Its
feature/microvm/devbranch and thefeature/microvm/release/v1.0tov2.2branches carry the same commits as the nanvix/openvmmmicrovm/*branches. This PR takes theopenvmmsubmodule from microsoft/openvmmfeature/microvm/devinstead of nanvix/openvmmmain.d0bdbed8f6e3b86271277dc22658109e2e633b2d. That commit is the current tip of microsoft/openvmmfeature/microvm/dev, and of nanvix/openvmmmainandmicrovm/v2.2. It has a good SSH signature from ppenna@microsoft.com.feature/microvm/devwas published directly from nanvix/openvmmmicrovm/v2.2.b10178aa5f61ab0fd1f2fb1c63847b41f4f42574) are byte-for-byte identical todev's.b75bd7c5729badc2c1334562181c607574e5c448, one commit ondev77f84a4d8.Changes
.gitmodules: the URL is nowhttps://github.com/microsoft/openvmm.git, and the tracked branch isfeature/microvm/dev.checkout-openvmmaction: it hard-codednanvix/openvmminstead of following.gitmodules, so CI now checks outmicrosoft/openvmm. No secret changes are needed. CI already fetches OpenVMM over HTTPS with the job token because noOPENVMM_DEPLOY_KEYsecret is set. TheCheckout OpenVMMstep of dev run 39319862129 shows theAUTHORIZATION: basicheader.resolve_nvx_tagrejects a release tag whose.gitmodulesURL differs fromsource_url, andprepare_sourcerequires the pin onsource_branch.config.jsontherefore now names microsoft/openvmm andfeature/microvm/dev. The README, the guidance, and the--ci-inittarget label match..github/copilot-instructions.md,doc/contribute.md,doc/project-structure.md, andaci_edge_sandboxes/README.md.doc/contribute.mdnow routes OpenVMM changes through pull requests tofeature/microvm/dev.Not changed: the unused
OPENVMM_DEPLOY_KEYplumbing and its description indoc/ci.md, and the commit mapping indoc/openvmm-upstream-roadmap.md.Follow-ups after merge
ensure_barerefuses a cached repository whose origin differs fromsource_url. Before the next dispatch, run this once on the runner:git -C /mnt/data/openvmm-verification/repos/openvmm.git remote set-url origin https://github.com/microsoft/openvmm.git. Release tags that predate this change no longer pass the origin check.git submodule sync -- openvmm.doc/contribute.mdnotes this.Validation
Run locally on Windows at this head, with the submodule cloned from microsoft/openvmm:
python scripts\nvx.py verify: pass.python scripts/check_markdown_links.py: pass.python -m ruff check scripts .github/specula: pass.python3 -m unittest discover -s testsin.github/specula): 25 pass. They ran under WSL Ubuntu because they importfcntl.source_urlandsource_branchmatch.gitmodules, and the pin is onfeature/microvm/devancestry.git diff --check: clean.Left to CI:
checkout-openvmmchange on every platform.copilot-setup-steps, which initializes the submodule from.gitmodules.