Skip to content

Add OCI Windows machine images - #429

Draft
sjmiller609 wants to merge 3 commits into
hypeship/windows-configfrom
hypeship/windows-images
Draft

Add OCI Windows machine images#429
sjmiller609 wants to merge 3 commits into
hypeship/windows-configfrom
hypeship/windows-images

Conversation

@sjmiller609

@sjmiller609 sjmiller609 commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

summary

  • add OCI metadata and materialization for Windows base/persona machine images
  • normalize raw, qcow2, VHD, and VHDX bases into immutable sparse raw disks
  • canonicalize persona backing paths and reflink-clone writable per-instance qcow2 disks
  • create per-instance OVMF/NVRAM and TPM state for Windows QEMU instances
  • reject external disk references and pre-snapshot Windows lifecycle operations
  • preserve existing Linux image and instance behavior

tests

  • go test -run 'TestMaterializeRejectsExternalDiskReferences|TestMaterializeWindowsBaseFormats|TestMaterializeWindowsPersona|TestValidateWindows|TestRejectWindowsSnapshotLifecycle' -v ./lib/images ./lib/instances on deft
  • CI=true HYPEMAN_WINDOWS_TEST_BASE=/ci/windows/base.raw HYPEMAN_WINDOWS_TEST_PERSONA=/ci/windows/persona.qcow2 go test -run TestMachineArtifactsPullFromOCI -v -timeout 20m ./lib/images on deft
  • CI=true HYPEMAN_WINDOWS_TEST_PERSONA=/ci/windows/persona.qcow2 go test -run 'TestWindowsImagesIntegration|TestQEMUStandbyAndRestore' -v -timeout 20m ./lib/instances on deft

notes

  • Windows instances remain Initializing until guest-agent readiness lands in the next phase.
  • Image tag deletion now aborts if digest tag counting fails rather than deleting a tag with uncertain digest ownership.
  • The manually prepared Windows fixtures are private and digest-pinned; no Windows media, generated disks, credentials, or licensing material is committed.

@sjmiller609
sjmiller609 force-pushed the hypeship/windows-images branch from 6744f6a to 65c40f2 Compare August 20, 2026 14:14
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.

1 participant