Remove the microvm host runtime #40
No reviewers
Labels
No labels
blocked
bug
decision
duplicate
enhancement
help wanted
invalid
landed?
question
ready-to-merge
stale
wontfix
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
allod/nexus!40
Loading…
Reference in a new issue
No description provided.
Delete branch "agent/microvm-withdrawal"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The microvm host runtime is gone from this repo, and the
vmflake input with it, since the host re-export was the only thing nexus read from it. One running machine's derivation path changes: the hypervisor, and only becausenix/provisioning-scripts.nixcopies its scripts out of the whole nexus source tree, so every nexus commit moves it. The built script directory is byte-identical across the two revisions, and the two hypervisor closures differ in exactly the eleven derivations on the path from that package up to the system, so a rebuilt host installs the same content. If that reading is wrong, the hypervisor is the machine to roll back. All three remaining checks build green.Refs allod/strategy#46. Merge order: second of the sequence posted on that issue, after allod/archetypes#71, which stops reading
nixosModules.microvmHost.What changes
nix/microvm/{host,launcher}.nix,checks/microvm/(the host contract and isolation checks),docs/microvm-host.md, thenixosModules.microvmHostexport, and the README and integration paragraphs that described it.vminput is removed fromflake.nix. The lock loses the vm subtree (vm, disko, microvm, spectrum and nixpkgs-unstable nodes); every surviving node is byte-identical to before.tests/pi-provider.sh: the fixture proving a non-libvirt target is refused now carries an unsupported runtime literal instead of the removed enum member. The script's own libvirt gate is unchanged.Risk
nix/provisioning-scripts.nix. The content is identical here (below); the coupling itself predates this PR and is the same class as allod/archetypes#21.Validation
nix build .#checks.x86_64-linux.<name>one attribute at a time, all green: host-provisioning-env, no-hardcoded-arch, provisioning-contract (which runstests/pi-provider.shand the other shell tests under shellcheck).fleet-diff --override archetypes/nexus=331ba8e494934ac6a517c226f31486c12413a6e6from allod/deploy: allod-dev, installer, privacy-1 unchanged; nexus CHANGES.#provisioning-scriptsbuilt at the locked nexus revisiona2c9d8band at331ba8e, thendiff -rover the two outputs: identical. The two hypervisor toplevel closures hold 5635 derivations each and differ in exactly eleven, the same eleven names on each side with a new hash: nexus-provisioning-scripts, home-manager-path, home-manager-files, hm_fontconfigconf.d10hmfonts.conf, home-manager-generation, unit-home-manager-allod.service, system-units, etc, user-environment, activate, nixos-system-nexus.grep -ri microvmover the tree finds nothing.