zyvor-guestkit 1.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (881) hide show
  1. zyvor_guestkit-1.2.2/.cargo/config.toml +9 -0
  2. zyvor_guestkit-1.2.2/.dockerignore +69 -0
  3. zyvor_guestkit-1.2.2/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  4. zyvor_guestkit-1.2.2/.github/ISSUE_TEMPLATE/config.yml +23 -0
  5. zyvor_guestkit-1.2.2/.github/ISSUE_TEMPLATE/feature_request.md +16 -0
  6. zyvor_guestkit-1.2.2/.github/RELEASE_TEMPLATE.md +17 -0
  7. zyvor_guestkit-1.2.2/.github/actions/rescue-dry-run/action.yml +89 -0
  8. zyvor_guestkit-1.2.2/.github/copilot-instructions.md +115 -0
  9. zyvor_guestkit-1.2.2/.github/workflows/agent-release.yml +70 -0
  10. zyvor_guestkit-1.2.2/.github/workflows/build-wheels.yml +143 -0
  11. zyvor_guestkit-1.2.2/.github/workflows/ci.yml +373 -0
  12. zyvor_guestkit-1.2.2/.github/workflows/integration-tests.yml +328 -0
  13. zyvor_guestkit-1.2.2/.github/workflows/k3s-e2e.yml +106 -0
  14. zyvor_guestkit-1.2.2/.github/workflows/no-virsh.yml +34 -0
  15. zyvor_guestkit-1.2.2/.github/workflows/pages.yml +33 -0
  16. zyvor_guestkit-1.2.2/.github/workflows/passport-gate-demo.yml +68 -0
  17. zyvor_guestkit-1.2.2/.github/workflows/publish-zyvor-images.yml +58 -0
  18. zyvor_guestkit-1.2.2/.github/workflows/release.yml +253 -0
  19. zyvor_guestkit-1.2.2/.github/workflows/rpm.yml +418 -0
  20. zyvor_guestkit-1.2.2/.github/workflows/self-hosted-nbd-tests.yml +84 -0
  21. zyvor_guestkit-1.2.2/.gitignore +41 -0
  22. zyvor_guestkit-1.2.2/CHANGELOG.md +63 -0
  23. zyvor_guestkit-1.2.2/Cargo.lock +6214 -0
  24. zyvor_guestkit-1.2.2/Cargo.toml +207 -0
  25. zyvor_guestkit-1.2.2/Cargo.toml.workspace +152 -0
  26. zyvor_guestkit-1.2.2/Dockerfile +78 -0
  27. zyvor_guestkit-1.2.2/LICENSE +202 -0
  28. zyvor_guestkit-1.2.2/Makefile +96 -0
  29. zyvor_guestkit-1.2.2/Makefile.docker +107 -0
  30. zyvor_guestkit-1.2.2/NOTICE +19 -0
  31. zyvor_guestkit-1.2.2/PKG-INFO +502 -0
  32. zyvor_guestkit-1.2.2/README.md +464 -0
  33. zyvor_guestkit-1.2.2/SECURITY.md +322 -0
  34. zyvor_guestkit-1.2.2/action.yml +232 -0
  35. zyvor_guestkit-1.2.2/benches/benchmarks.rs +332 -0
  36. zyvor_guestkit-1.2.2/benches/operations.rs +318 -0
  37. zyvor_guestkit-1.2.2/benches/performance.rs +373 -0
  38. zyvor_guestkit-1.2.2/build_python.sh +93 -0
  39. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/Cargo.lock +128 -0
  40. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/Cargo.toml +17 -0
  41. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/capabilities.rs +240 -0
  42. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/error.rs +97 -0
  43. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/frame.rs +117 -0
  44. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/guest_info.rs +80 -0
  45. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/health.rs +229 -0
  46. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/heartbeat.rs +106 -0
  47. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/lib.rs +35 -0
  48. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/rpc.rs +492 -0
  49. zyvor_guestkit-1.2.2/crates/guestkit-agent-protocol/src/telemetry.rs +86 -0
  50. zyvor_guestkit-1.2.2/deploy/README.md +183 -0
  51. zyvor_guestkit-1.2.2/deploy/crd/zeus-guest-action-policy.yaml +41 -0
  52. zyvor_guestkit-1.2.2/deploy/crd/zeus-vmtools.yaml +203 -0
  53. zyvor_guestkit-1.2.2/deploy/docker-compose.ghcr.yml +105 -0
  54. zyvor_guestkit-1.2.2/deploy/docker-compose.lab-ui.yml +7 -0
  55. zyvor_guestkit-1.2.2/deploy/docker-compose.prod.example.yml +97 -0
  56. zyvor_guestkit-1.2.2/deploy/examples/agent-policy-self-update.yaml +16 -0
  57. zyvor_guestkit-1.2.2/deploy/examples/guest-action-policy-approval.yaml +10 -0
  58. zyvor_guestkit-1.2.2/deploy/examples/guest-action-policy-default.yaml +10 -0
  59. zyvor_guestkit-1.2.2/deploy/examples/kubevirt/migrated-vm.yaml +60 -0
  60. zyvor_guestkit-1.2.2/deploy/examples/packetwolf-correlation.yaml +20 -0
  61. zyvor_guestkit-1.2.2/deploy/helm/zyvor/Chart.yaml +6 -0
  62. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/_helpers.tpl +58 -0
  63. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/agent-mtls-ingress.yaml +23 -0
  64. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/fleet-drift-watch-cronjob.yaml +75 -0
  65. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/guestkit-worker-deployment.yaml +75 -0
  66. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/image-vault-backup-cronjob.yaml +80 -0
  67. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/ingress.yaml +46 -0
  68. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/minio.yaml +87 -0
  69. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/namespace.yaml +12 -0
  70. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/networkpolicy.yaml +23 -0
  71. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/postgresql.yaml +79 -0
  72. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/pvc-vm-images.yaml +16 -0
  73. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/redis.yaml +83 -0
  74. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/secrets.yaml +13 -0
  75. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/vmtools-bundle.yaml +25 -0
  76. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/vmtools-policy.yaml +16 -0
  77. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/vmtools-reconcile-cronjob.yaml +33 -0
  78. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/zyvor-api-auth-configmap.yaml +50 -0
  79. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/zyvor-api-deployment.yaml +224 -0
  80. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/zyvor-api-rbac.yaml +53 -0
  81. zyvor_guestkit-1.2.2/deploy/helm/zyvor/templates/zyvor-ui-deployment.yaml +41 -0
  82. zyvor_guestkit-1.2.2/deploy/helm/zyvor/values-ci.yaml +70 -0
  83. zyvor_guestkit-1.2.2/deploy/helm/zyvor/values-k3s.yaml +77 -0
  84. zyvor_guestkit-1.2.2/deploy/helm/zyvor/values-prod.yaml +94 -0
  85. zyvor_guestkit-1.2.2/deploy/helm/zyvor/values.yaml +181 -0
  86. zyvor_guestkit-1.2.2/deploy/migrations/001_init.sql +30 -0
  87. zyvor_guestkit-1.2.2/deploy/openapi/zyvor-vm-services.yaml +1076 -0
  88. zyvor_guestkit-1.2.2/deploy/scripts/ci-k3s-e2e.sh +102 -0
  89. zyvor_guestkit-1.2.2/deploy/scripts/deploy-remote-k3s.sh +165 -0
  90. zyvor_guestkit-1.2.2/deploy/scripts/e2e-agent-live.sh +226 -0
  91. zyvor_guestkit-1.2.2/deploy/scripts/e2e-photon-k3s.sh +239 -0
  92. zyvor_guestkit-1.2.2/deploy/scripts/e2e-smoke.sh +262 -0
  93. zyvor_guestkit-1.2.2/deploy/scripts/e2e-ubuntu-k3s.sh +338 -0
  94. zyvor_guestkit-1.2.2/deploy/scripts/install-k3s-ubuntu.sh +105 -0
  95. zyvor_guestkit-1.2.2/deploy/scripts/kind-kubevirt-quickstart.sh +93 -0
  96. zyvor_guestkit-1.2.2/deploy/scripts/publish-images.sh +80 -0
  97. zyvor_guestkit-1.2.2/deploy/scripts/publish-vmtools-bundle.sh +50 -0
  98. zyvor_guestkit-1.2.2/deploy/scripts/sync-ironwolf-theme.sh +18 -0
  99. zyvor_guestkit-1.2.2/deploy/scripts/watch-workflow-run.sh +77 -0
  100. zyvor_guestkit-1.2.2/deploy/ui/Dockerfile +7 -0
  101. zyvor_guestkit-1.2.2/deploy/ui/api.js +410 -0
  102. zyvor_guestkit-1.2.2/deploy/ui/demo-doctor.json +35 -0
  103. zyvor_guestkit-1.2.2/deploy/ui/demo-inspect.json +55 -0
  104. zyvor_guestkit-1.2.2/deploy/ui/index.html +759 -0
  105. zyvor_guestkit-1.2.2/deploy/ui/login.html +95 -0
  106. zyvor_guestkit-1.2.2/deploy/ui/serve-https.py +173 -0
  107. zyvor_guestkit-1.2.2/deploy/ui/zyvor-mark.svg +17 -0
  108. zyvor_guestkit-1.2.2/docker-compose.yml +61 -0
  109. zyvor_guestkit-1.2.2/docker-entrypoint.sh +22 -0
  110. zyvor_guestkit-1.2.2/docs/CLIENT_BUNDLE_POLICY.md +70 -0
  111. zyvor_guestkit-1.2.2/docs/INDEX.md +76 -0
  112. zyvor_guestkit-1.2.2/docs/INDUSTRY_USE_CASES.md +227 -0
  113. zyvor_guestkit-1.2.2/docs/PACKAGE_BINARY_REMOTE.md +81 -0
  114. zyvor_guestkit-1.2.2/docs/README.md +54 -0
  115. zyvor_guestkit-1.2.2/docs/USER_STORIES.md +91 -0
  116. zyvor_guestkit-1.2.2/docs/architecture/overview.md +93 -0
  117. zyvor_guestkit-1.2.2/docs/ce-vs-enterprise.md +106 -0
  118. zyvor_guestkit-1.2.2/docs/client-presentations/01-guestkit-overview.html +18 -0
  119. zyvor_guestkit-1.2.2/docs/client-presentations/02-guestkit-architecture.html +18 -0
  120. zyvor_guestkit-1.2.2/docs/client-presentations/03-guestkit-deployment.html +18 -0
  121. zyvor_guestkit-1.2.2/docs/client-presentations/README.md +11 -0
  122. zyvor_guestkit-1.2.2/docs/development/CHANGELOG.md +797 -0
  123. zyvor_guestkit-1.2.2/docs/development/CONTRIBUTING.md +452 -0
  124. zyvor_guestkit-1.2.2/docs/development/RPM-BUILD.md +342 -0
  125. zyvor_guestkit-1.2.2/docs/development/ai-guest-agent-roadmap.md +124 -0
  126. zyvor_guestkit-1.2.2/docs/development/publishing.md +38 -0
  127. zyvor_guestkit-1.2.2/docs/development/roadmap.md +66 -0
  128. zyvor_guestkit-1.2.2/docs/devops/01-passport-ci-gate.md +163 -0
  129. zyvor_guestkit-1.2.2/docs/devops/02-offline-repair-worker.md +93 -0
  130. zyvor_guestkit-1.2.2/docs/devops/03-airgap-packages-virtio.md +69 -0
  131. zyvor_guestkit-1.2.2/docs/devops/04-fleet-analyze.md +58 -0
  132. zyvor_guestkit-1.2.2/docs/devops/05-cutover-weekend.md +57 -0
  133. zyvor_guestkit-1.2.2/docs/devops/06-failure-triage.md +68 -0
  134. zyvor_guestkit-1.2.2/docs/devops/07-cloud-disk-sources.md +61 -0
  135. zyvor_guestkit-1.2.2/docs/devops/08-forensic-diff-ir.md +19 -0
  136. zyvor_guestkit-1.2.2/docs/devops/09-sbom-inventory-ci.md +13 -0
  137. zyvor_guestkit-1.2.2/docs/devops/10-rescue-sbom-ci.md +40 -0
  138. zyvor_guestkit-1.2.2/docs/devops/README.md +34 -0
  139. zyvor_guestkit-1.2.2/docs/enterprise-trial-install.md +89 -0
  140. zyvor_guestkit-1.2.2/docs/features/explore/EXPLORE-QUICKSTART.md +419 -0
  141. zyvor_guestkit-1.2.2/docs/features/export-formats.md +619 -0
  142. zyvor_guestkit-1.2.2/docs/features/fix-plans.md +634 -0
  143. zyvor_guestkit-1.2.2/docs/features/guest-agent.md +295 -0
  144. zyvor_guestkit-1.2.2/docs/features/guest-control-fabric.md +115 -0
  145. zyvor_guestkit-1.2.2/docs/features/guestkit-agent-protocol-1.3.md +190 -0
  146. zyvor_guestkit-1.2.2/docs/features/hyper2kvm-integration.md +157 -0
  147. zyvor_guestkit-1.2.2/docs/features/kubevirt-integration.md +87 -0
  148. zyvor_guestkit-1.2.2/docs/features/migration-assurance.md +381 -0
  149. zyvor_guestkit-1.2.2/docs/features/qemu-runtime.md +125 -0
  150. zyvor_guestkit-1.2.2/docs/features/tui-enhancements.md +358 -0
  151. zyvor_guestkit-1.2.2/docs/features/virtctl-guestkit.md +38 -0
  152. zyvor_guestkit-1.2.2/docs/features/vm-runtime.md +100 -0
  153. zyvor_guestkit-1.2.2/docs/features/zeus-vm-tools.md +156 -0
  154. zyvor_guestkit-1.2.2/docs/guestkit-user-feature-guide.html +78 -0
  155. zyvor_guestkit-1.2.2/docs/guestkit-user-feature-guide.md +296 -0
  156. zyvor_guestkit-1.2.2/docs/guestkit-user-feature-guide.pdf +0 -0
  157. zyvor_guestkit-1.2.2/docs/guides/DEPLOY-REMOTE.md +83 -0
  158. zyvor_guestkit-1.2.2/docs/guides/DOCKER.md +489 -0
  159. zyvor_guestkit-1.2.2/docs/guides/cloud-disk-sources.md +71 -0
  160. zyvor_guestkit-1.2.2/docs/img/machina-guestkit-demo-thumb.jpg +0 -0
  161. zyvor_guestkit-1.2.2/docs/img/zyvor-favicon.svg +13 -0
  162. zyvor_guestkit-1.2.2/docs/img/zyvor-logo.webp +0 -0
  163. zyvor_guestkit-1.2.2/docs/legal/CORPORATE.md +32 -0
  164. zyvor_guestkit-1.2.2/docs/legal/README.md +10 -0
  165. zyvor_guestkit-1.2.2/docs/legal/TRADEMARK-NOTICE.md +7 -0
  166. zyvor_guestkit-1.2.2/docs/user/PAGE_INDEX.md +111 -0
  167. zyvor_guestkit-1.2.2/docs/user/README.md +45 -0
  168. zyvor_guestkit-1.2.2/docs/user/admin-basics.md +37 -0
  169. zyvor_guestkit-1.2.2/docs/user/getting-started.md +42 -0
  170. zyvor_guestkit-1.2.2/docs/user/pages/README.md +108 -0
  171. zyvor_guestkit-1.2.2/docs/user/pages/assurance/doctor.md +38 -0
  172. zyvor_guestkit-1.2.2/docs/user/pages/assurance/migrate-plan.md +39 -0
  173. zyvor_guestkit-1.2.2/docs/user/pages/assurance/migration-assurance.md +41 -0
  174. zyvor_guestkit-1.2.2/docs/user/pages/assurance/policy.md +38 -0
  175. zyvor_guestkit-1.2.2/docs/user/pages/export/export-formats.md +39 -0
  176. zyvor_guestkit-1.2.2/docs/user/pages/fix-plans/fix-plans.md +38 -0
  177. zyvor_guestkit-1.2.2/docs/user/pages/fix-plans/repair.md +38 -0
  178. zyvor_guestkit-1.2.2/docs/user/pages/fleet/fleet.md +38 -0
  179. zyvor_guestkit-1.2.2/docs/user/pages/forensics/forensic-diff.md +38 -0
  180. zyvor_guestkit-1.2.2/docs/user/pages/guest-agent/guest-agent.md +39 -0
  181. zyvor_guestkit-1.2.2/docs/user/pages/guest-files/files.md +38 -0
  182. zyvor_guestkit-1.2.2/docs/user/pages/guest-files/guest-control-fabric.md +38 -0
  183. zyvor_guestkit-1.2.2/docs/user/pages/guides/vm-migration.md +40 -0
  184. zyvor_guestkit-1.2.2/docs/user/pages/inspection/filesystems.md +38 -0
  185. zyvor_guestkit-1.2.2/docs/user/pages/inspection/inspect.md +40 -0
  186. zyvor_guestkit-1.2.2/docs/user/pages/inspection/network.md +38 -0
  187. zyvor_guestkit-1.2.2/docs/user/pages/inspection/packages.md +38 -0
  188. zyvor_guestkit-1.2.2/docs/user/pages/inspection/services-users.md +39 -0
  189. zyvor_guestkit-1.2.2/docs/user/pages/integration/kubevirt-integration.md +39 -0
  190. zyvor_guestkit-1.2.2/docs/user/pages/integration/zeus-vm-tools.md +38 -0
  191. zyvor_guestkit-1.2.2/docs/user/pages/interfaces/python-bindings.md +41 -0
  192. zyvor_guestkit-1.2.2/docs/user/pages/interfaces/tui.md +39 -0
  193. zyvor_guestkit-1.2.2/docs/user/pages/onboarding/cli-guide.md +38 -0
  194. zyvor_guestkit-1.2.2/docs/user/pages/onboarding/getting-started.md +39 -0
  195. zyvor_guestkit-1.2.2/docs/user/pages/onboarding/interactive-mode.md +39 -0
  196. zyvor_guestkit-1.2.2/docs/user/pages/onboarding/quick-reference.md +39 -0
  197. zyvor_guestkit-1.2.2/docs/user/pages/profiles/profiles.md +38 -0
  198. zyvor_guestkit-1.2.2/docs/user/pages/support/faq.md +38 -0
  199. zyvor_guestkit-1.2.2/docs/user/pages/support/troubleshooting.md +38 -0
  200. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-Admin-Basics.html +75 -0
  201. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-Admin-Basics.pdf +0 -0
  202. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-Getting-Started.html +181 -0
  203. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-Getting-Started.pdf +0 -0
  204. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-Page-by-Page.html +1673 -0
  205. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-Page-by-Page.pdf +0 -0
  206. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-User-README.html +123 -0
  207. zyvor_guestkit-1.2.2/docs/user/pdf/GuestKit-User-README.pdf +0 -0
  208. zyvor_guestkit-1.2.2/docs/user/pdf/PDF_INDEX.md +10 -0
  209. zyvor_guestkit-1.2.2/docs/user/using-the-dashboard.md +65 -0
  210. zyvor_guestkit-1.2.2/docs/user/workflows.md +35 -0
  211. zyvor_guestkit-1.2.2/docs/user-guides/cli-guide.md +85 -0
  212. zyvor_guestkit-1.2.2/docs/user-guides/cloud-init.md +28 -0
  213. zyvor_guestkit-1.2.2/docs/user-guides/cloud-policy-rego.md +43 -0
  214. zyvor_guestkit-1.2.2/docs/user-guides/cutover-bundle.md +27 -0
  215. zyvor_guestkit-1.2.2/docs/user-guides/cutover-prep.md +52 -0
  216. zyvor_guestkit-1.2.2/docs/user-guides/faq.md +761 -0
  217. zyvor_guestkit-1.2.2/docs/user-guides/getting-started.md +288 -0
  218. zyvor_guestkit-1.2.2/docs/user-guides/handoff-quarantine.md +55 -0
  219. zyvor_guestkit-1.2.2/docs/user-guides/img-firstboot.md +65 -0
  220. zyvor_guestkit-1.2.2/docs/user-guides/interactive-mode.md +722 -0
  221. zyvor_guestkit-1.2.2/docs/user-guides/profiles.md +559 -0
  222. zyvor_guestkit-1.2.2/docs/user-guides/python-bindings.md +169 -0
  223. zyvor_guestkit-1.2.2/docs/user-guides/quick-reference.md +412 -0
  224. zyvor_guestkit-1.2.2/docs/user-guides/troubleshooting.md +706 -0
  225. zyvor_guestkit-1.2.2/docs/user-guides/virsh-to-guestkit.md +110 -0
  226. zyvor_guestkit-1.2.2/docs/user-guides/vm-migration.md +700 -0
  227. zyvor_guestkit-1.2.2/docs/zyvor-enterprise.md +75 -0
  228. zyvor_guestkit-1.2.2/examples/batch/README.md +153 -0
  229. zyvor_guestkit-1.2.2/examples/batch/inspect.gk +26 -0
  230. zyvor_guestkit-1.2.2/examples/batch/security-audit.gk +33 -0
  231. zyvor_guestkit-1.2.2/examples/command_and_archive.rs +186 -0
  232. zyvor_guestkit-1.2.2/examples/convert_disk.rs +43 -0
  233. zyvor_guestkit-1.2.2/examples/create_disk_fluent.rs +141 -0
  234. zyvor_guestkit-1.2.2/examples/detect_format.rs +25 -0
  235. zyvor_guestkit-1.2.2/examples/disk_forensics.rs +304 -0
  236. zyvor_guestkit-1.2.2/examples/fluent_api.rs +199 -0
  237. zyvor_guestkit-1.2.2/examples/inspect_os_typed.rs +233 -0
  238. zyvor_guestkit-1.2.2/examples/inspect_vm.rs +140 -0
  239. zyvor_guestkit-1.2.2/examples/jobs/fix-offline.json +86 -0
  240. zyvor_guestkit-1.2.2/examples/jobs/inspect-full.json +102 -0
  241. zyvor_guestkit-1.2.2/examples/jobs/inspect-minimal.json +18 -0
  242. zyvor_guestkit-1.2.2/examples/jobs/profile-security.json +65 -0
  243. zyvor_guestkit-1.2.2/examples/lvm_luks_demo.rs +161 -0
  244. zyvor_guestkit-1.2.2/examples/mount_and_explore.rs +145 -0
  245. zyvor_guestkit-1.2.2/examples/podman_clone_test.rs +66 -0
  246. zyvor_guestkit-1.2.2/examples/policies/example-policy.yaml +57 -0
  247. zyvor_guestkit-1.2.2/examples/python/README.md +481 -0
  248. zyvor_guestkit-1.2.2/examples/python/archive_example.py +159 -0
  249. zyvor_guestkit-1.2.2/examples/python/assurance_doctor.py +49 -0
  250. zyvor_guestkit-1.2.2/examples/python/async_inspection.py +316 -0
  251. zyvor_guestkit-1.2.2/examples/python/basic_inspection.py +132 -0
  252. zyvor_guestkit-1.2.2/examples/python/comprehensive_example.py +246 -0
  253. zyvor_guestkit-1.2.2/examples/python/create_disk.py +292 -0
  254. zyvor_guestkit-1.2.2/examples/python/extract_files.py +117 -0
  255. zyvor_guestkit-1.2.2/examples/python/list_filesystems.py +141 -0
  256. zyvor_guestkit-1.2.2/examples/python/mount_and_explore.py +187 -0
  257. zyvor_guestkit-1.2.2/examples/python/package_inspection.py +255 -0
  258. zyvor_guestkit-1.2.2/examples/python/test_all_apis.py +219 -0
  259. zyvor_guestkit-1.2.2/examples/python/test_bindings.py +582 -0
  260. zyvor_guestkit-1.2.2/examples/python/test_enhancements.py +115 -0
  261. zyvor_guestkit-1.2.2/examples/retry_example.rs +50 -0
  262. zyvor_guestkit-1.2.2/examples/system_info.rs +232 -0
  263. zyvor_guestkit-1.2.2/examples/vm_clone_prep.rs +279 -0
  264. zyvor_guestkit-1.2.2/examples/worker-jobs/README.md +225 -0
  265. zyvor_guestkit-1.2.2/examples/worker-jobs/echo-test.json +31 -0
  266. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-agent-call-basic.json +14 -0
  267. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-agent-doctor-basic.json +13 -0
  268. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-agent-evidence-basic.json +13 -0
  269. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-doctor-basic.json +18 -0
  270. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-inspect-basic.json +42 -0
  271. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-inspect-full.json +77 -0
  272. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-migrate-plan-basic.json +19 -0
  273. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-profile-security.json +49 -0
  274. zyvor_guestkit-1.2.2/examples/worker-jobs/guestkit-repair-basic.json +18 -0
  275. zyvor_guestkit-1.2.2/guestkit-full.spec +263 -0
  276. zyvor_guestkit-1.2.2/guestkit.pyi +559 -0
  277. zyvor_guestkit-1.2.2/guestkit.spec +181 -0
  278. zyvor_guestkit-1.2.2/install.sh +107 -0
  279. zyvor_guestkit-1.2.2/integration/README.md +115 -0
  280. zyvor_guestkit-1.2.2/integration/python/guestkit_wrapper.py +351 -0
  281. zyvor_guestkit-1.2.2/integration/tests/test_integration.py +172 -0
  282. zyvor_guestkit-1.2.2/k8s/README.md +278 -0
  283. zyvor_guestkit-1.2.2/k8s/configmap.yaml +24 -0
  284. zyvor_guestkit-1.2.2/k8s/daemonset.yaml +103 -0
  285. zyvor_guestkit-1.2.2/k8s/kustomization.yaml +14 -0
  286. zyvor_guestkit-1.2.2/k8s/namespace.yaml +7 -0
  287. zyvor_guestkit-1.2.2/k8s/serviceaccount.yaml +39 -0
  288. zyvor_guestkit-1.2.2/node_modules/.bin/marked +16 -0
  289. zyvor_guestkit-1.2.2/node_modules/.package-lock.json +18 -0
  290. zyvor_guestkit-1.2.2/node_modules/marked/LICENSE +44 -0
  291. zyvor_guestkit-1.2.2/node_modules/marked/README.md +116 -0
  292. zyvor_guestkit-1.2.2/node_modules/marked/bin/main.js +284 -0
  293. zyvor_guestkit-1.2.2/node_modules/marked/bin/marked.js +16 -0
  294. zyvor_guestkit-1.2.2/node_modules/marked/lib/marked.d.ts +823 -0
  295. zyvor_guestkit-1.2.2/node_modules/marked/lib/marked.esm.js +78 -0
  296. zyvor_guestkit-1.2.2/node_modules/marked/lib/marked.esm.js.map +7 -0
  297. zyvor_guestkit-1.2.2/node_modules/marked/lib/marked.umd.js +80 -0
  298. zyvor_guestkit-1.2.2/node_modules/marked/lib/marked.umd.js.map +7 -0
  299. zyvor_guestkit-1.2.2/node_modules/marked/man/marked.1 +113 -0
  300. zyvor_guestkit-1.2.2/node_modules/marked/man/marked.1.md +93 -0
  301. zyvor_guestkit-1.2.2/node_modules/marked/package.json +103 -0
  302. zyvor_guestkit-1.2.2/packaging/vmtools/Dockerfile +18 -0
  303. zyvor_guestkit-1.2.2/packaging/vmtools/build-artifacts.sh +176 -0
  304. zyvor_guestkit-1.2.2/packaging/vmtools/windows/README.md +32 -0
  305. zyvor_guestkit-1.2.2/packaging/vmtools/windows/build-msi.sh +73 -0
  306. zyvor_guestkit-1.2.2/packaging/vmtools/windows/guestkit-wixl.wxs +46 -0
  307. zyvor_guestkit-1.2.2/packaging/vmtools/windows/install.ps1 +67 -0
  308. zyvor_guestkit-1.2.2/packaging/vmtools/windows/zyvor-guest-agent.wxs +57 -0
  309. zyvor_guestkit-1.2.2/packaging/vmtools/zyvor-vm-tools.spec +87 -0
  310. zyvor_guestkit-1.2.2/policies/cutover.rego +17 -0
  311. zyvor_guestkit-1.2.2/presentations/client-overview.pdf +0 -0
  312. zyvor_guestkit-1.2.2/presentations/guestkit-client.pdf +0 -0
  313. zyvor_guestkit-1.2.2/proptest-regressions/core/binary_cache.txt +8 -0
  314. zyvor_guestkit-1.2.2/pyproject.toml +61 -0
  315. zyvor_guestkit-1.2.2/scripts/analyze-performance.sh +328 -0
  316. zyvor_guestkit-1.2.2/scripts/build-linux-bundle.sh +107 -0
  317. zyvor_guestkit-1.2.2/scripts/build-linux-release.sh +55 -0
  318. zyvor_guestkit-1.2.2/scripts/build-windows-bundle.sh +90 -0
  319. zyvor_guestkit-1.2.2/scripts/ci-cloud-disk-sources.sh +21 -0
  320. zyvor_guestkit-1.2.2/scripts/demo-videos/.gitignore +10 -0
  321. zyvor_guestkit-1.2.2/scripts/demo-videos/README.md +80 -0
  322. zyvor_guestkit-1.2.2/scripts/demo-videos/build-web.sh +98 -0
  323. zyvor_guestkit-1.2.2/scripts/demo-videos/build.sh +71 -0
  324. zyvor_guestkit-1.2.2/scripts/demo-videos/rec-doctor.tape +17 -0
  325. zyvor_guestkit-1.2.2/scripts/demo-videos/rec-inspect.tape +17 -0
  326. zyvor_guestkit-1.2.2/scripts/demo-videos/rec-migrate.tape +17 -0
  327. zyvor_guestkit-1.2.2/scripts/demo-videos/rec-tui.tape +25 -0
  328. zyvor_guestkit-1.2.2/scripts/demo-videos/rec-web-tour.mjs +60 -0
  329. zyvor_guestkit-1.2.2/scripts/demo-videos/rec-web-tutorial.mjs +78 -0
  330. zyvor_guestkit-1.2.2/scripts/demo-videos/render-cards-web.mjs +90 -0
  331. zyvor_guestkit-1.2.2/scripts/demo-videos/render-cards.mjs +82 -0
  332. zyvor_guestkit-1.2.2/scripts/deploy-remote.sh +613 -0
  333. zyvor_guestkit-1.2.2/scripts/deploy-to-k3d.sh +81 -0
  334. zyvor_guestkit-1.2.2/scripts/deploy-ui-remote.sh +308 -0
  335. zyvor_guestkit-1.2.2/scripts/lib/HOST_SETUP.txt +61 -0
  336. zyvor_guestkit-1.2.2/scripts/lib/PREREQUISITES.txt +27 -0
  337. zyvor_guestkit-1.2.2/scripts/lib/START_HERE.txt +46 -0
  338. zyvor_guestkit-1.2.2/scripts/lib/copy-legal-to-bundle.sh +8 -0
  339. zyvor_guestkit-1.2.2/scripts/lib/copy-zyvor-legal-to-bundle.sh +60 -0
  340. zyvor_guestkit-1.2.2/scripts/lib/deploy-ui-remote-common.sh +38 -0
  341. zyvor_guestkit-1.2.2/scripts/lib/deploy-ui-remote-lib.sh +212 -0
  342. zyvor_guestkit-1.2.2/scripts/lib/finalize-user-bundle.sh +24 -0
  343. zyvor_guestkit-1.2.2/scripts/lib/generate-user-pdfs.py +574 -0
  344. zyvor_guestkit-1.2.2/scripts/lib/generate-user-pdfs.sh +66 -0
  345. zyvor_guestkit-1.2.2/scripts/lib/install-everything.sh +78 -0
  346. zyvor_guestkit-1.2.2/scripts/lib/package-auth-bootstrap.sh +140 -0
  347. zyvor_guestkit-1.2.2/scripts/lib/package-bundle-client.sh +60 -0
  348. zyvor_guestkit-1.2.2/scripts/lib/package-client-install.sh +26 -0
  349. zyvor_guestkit-1.2.2/scripts/lib/package-client-test.sh +25 -0
  350. zyvor_guestkit-1.2.2/scripts/lib/package-cluster-prereqs-run.sh +39 -0
  351. zyvor_guestkit-1.2.2/scripts/lib/package-cluster-test.sh +91 -0
  352. zyvor_guestkit-1.2.2/scripts/lib/package-guestkit-client-bundle.sh +144 -0
  353. zyvor_guestkit-1.2.2/scripts/lib/package-host-test.sh +24 -0
  354. zyvor_guestkit-1.2.2/scripts/lib/package-install.sh +49 -0
  355. zyvor_guestkit-1.2.2/scripts/lib/package-remote-ui.sh +50 -0
  356. zyvor_guestkit-1.2.2/scripts/lib/package-ui.sh +689 -0
  357. zyvor_guestkit-1.2.2/scripts/lib/package-uninstall-lib.sh +234 -0
  358. zyvor_guestkit-1.2.2/scripts/lib/package-uninstall.sh +16 -0
  359. zyvor_guestkit-1.2.2/scripts/lib/test-packages-remote-only.sh +260 -0
  360. zyvor_guestkit-1.2.2/scripts/lib/verify-bundle-script-paths.sh +60 -0
  361. zyvor_guestkit-1.2.2/scripts/lib/write-user-help.sh +278 -0
  362. zyvor_guestkit-1.2.2/scripts/package-binary-release.sh +109 -0
  363. zyvor_guestkit-1.2.2/scripts/package-binary-remote.sh +150 -0
  364. zyvor_guestkit-1.2.2/scripts/profile-flamegraph.sh +126 -0
  365. zyvor_guestkit-1.2.2/scripts/rebuild-all-user-tarballs-remote.sh +68 -0
  366. zyvor_guestkit-1.2.2/scripts/run_all_tests_individual.sh +134 -0
  367. zyvor_guestkit-1.2.2/scripts/run_arch_tests.sh +135 -0
  368. zyvor_guestkit-1.2.2/scripts/run_debian_tests.sh +179 -0
  369. zyvor_guestkit-1.2.2/scripts/run_ubuntu_tests.sh +154 -0
  370. zyvor_guestkit-1.2.2/scripts/run_windows_realistic_tests.sh +177 -0
  371. zyvor_guestkit-1.2.2/scripts/selftest.sh +274 -0
  372. zyvor_guestkit-1.2.2/scripts/setup_test_env.sh +90 -0
  373. zyvor_guestkit-1.2.2/scripts/smoke-ui-remote.sh +85 -0
  374. zyvor_guestkit-1.2.2/scripts/test-docker.sh +95 -0
  375. zyvor_guestkit-1.2.2/scripts/test-feature-matrix-remote.sh +93 -0
  376. zyvor_guestkit-1.2.2/scripts/test-feature-matrix.sh +167 -0
  377. zyvor_guestkit-1.2.2/scripts/test-packages-remote-only.sh +260 -0
  378. zyvor_guestkit-1.2.2/scripts/test-user-e2e-remote.sh +91 -0
  379. zyvor_guestkit-1.2.2/scripts/test_pypi_build.sh +196 -0
  380. zyvor_guestkit-1.2.2/scripts/track-performance.sh +74 -0
  381. zyvor_guestkit-1.2.2/scripts/user-docs/build-user-pdfs.mjs +195 -0
  382. zyvor_guestkit-1.2.2/scripts/user-docs/check-links.mjs +39 -0
  383. zyvor_guestkit-1.2.2/scripts/user-docs/generate-guide-index.mjs +61 -0
  384. zyvor_guestkit-1.2.2/scripts/user-docs/generate-guides.mjs +64 -0
  385. zyvor_guestkit-1.2.2/scripts/user-docs/generate-page-index.mjs +63 -0
  386. zyvor_guestkit-1.2.2/scripts/user-docs/page-purposes.json +31 -0
  387. zyvor_guestkit-1.2.2/scripts/user-docs/product.env +4 -0
  388. zyvor_guestkit-1.2.2/scripts/user-docs/routes.json +178 -0
  389. zyvor_guestkit-1.2.2/scripts/user-docs/sync-to-website.mjs +166 -0
  390. zyvor_guestkit-1.2.2/scripts/user-docs/ux-inventory.json +539 -0
  391. zyvor_guestkit-1.2.2/scripts/validate-docker.sh +144 -0
  392. zyvor_guestkit-1.2.2/scripts/validate-performance.sh +139 -0
  393. zyvor_guestkit-1.2.2/scripts/zyvor-branding/ZYVOR_INSTALL.txt +32 -0
  394. zyvor_guestkit-1.2.2/scripts/zyvor-branding/ZyvorBrand.tsx +155 -0
  395. zyvor_guestkit-1.2.2/scripts/zyvor-branding/zyvor-logo.png +0 -0
  396. zyvor_guestkit-1.2.2/src/agent/agent_call.rs +52 -0
  397. zyvor_guestkit-1.2.2/src/agent/audit.rs +35 -0
  398. zyvor_guestkit-1.2.2/src/agent/certificates.rs +370 -0
  399. zyvor_guestkit-1.2.2/src/agent/cli.rs +156 -0
  400. zyvor_guestkit-1.2.2/src/agent/containers.rs +392 -0
  401. zyvor_guestkit-1.2.2/src/agent/customization.rs +200 -0
  402. zyvor_guestkit-1.2.2/src/agent/daemon.rs +263 -0
  403. zyvor_guestkit-1.2.2/src/agent/exec.rs +54 -0
  404. zyvor_guestkit-1.2.2/src/agent/executor.rs +222 -0
  405. zyvor_guestkit-1.2.2/src/agent/executor_ipc.rs +365 -0
  406. zyvor_guestkit-1.2.2/src/agent/file_ops.rs +259 -0
  407. zyvor_guestkit-1.2.2/src/agent/handler.rs +1382 -0
  408. zyvor_guestkit-1.2.2/src/agent/heartbeat.rs +361 -0
  409. zyvor_guestkit-1.2.2/src/agent/inject.rs +730 -0
  410. zyvor_guestkit-1.2.2/src/agent/integrity.rs +579 -0
  411. zyvor_guestkit-1.2.2/src/agent/inventory_cache.rs +203 -0
  412. zyvor_guestkit-1.2.2/src/agent/local_client.rs +148 -0
  413. zyvor_guestkit-1.2.2/src/agent/mod.rs +75 -0
  414. zyvor_guestkit-1.2.2/src/agent/netintel.rs +335 -0
  415. zyvor_guestkit-1.2.2/src/agent/nettest.rs +192 -0
  416. zyvor_guestkit-1.2.2/src/agent/packages.rs +315 -0
  417. zyvor_guestkit-1.2.2/src/agent/policy.rs +546 -0
  418. zyvor_guestkit-1.2.2/src/agent/posture.rs +409 -0
  419. zyvor_guestkit-1.2.2/src/agent/proxy.rs +366 -0
  420. zyvor_guestkit-1.2.2/src/agent/qga.rs +1034 -0
  421. zyvor_guestkit-1.2.2/src/agent/qga_client.rs +140 -0
  422. zyvor_guestkit-1.2.2/src/agent/rdp.rs +60 -0
  423. zyvor_guestkit-1.2.2/src/agent/snapshot/mod.rs +295 -0
  424. zyvor_guestkit-1.2.2/src/agent/snapshot/plugins.rs +272 -0
  425. zyvor_guestkit-1.2.2/src/agent/snapshot/vss.rs +111 -0
  426. zyvor_guestkit-1.2.2/src/agent/snapshot_hooks.rs +87 -0
  427. zyvor_guestkit-1.2.2/src/agent/state.rs +185 -0
  428. zyvor_guestkit-1.2.2/src/agent/storage_ops.rs +151 -0
  429. zyvor_guestkit-1.2.2/src/agent/support_bundle.rs +116 -0
  430. zyvor_guestkit-1.2.2/src/agent/telemetry/mod.rs +400 -0
  431. zyvor_guestkit-1.2.2/src/agent/telemetry/ring.rs +97 -0
  432. zyvor_guestkit-1.2.2/src/agent/telemetry/sampler.rs +175 -0
  433. zyvor_guestkit-1.2.2/src/agent/transport/mod.rs +176 -0
  434. zyvor_guestkit-1.2.2/src/agent/transport/named_pipe.rs +72 -0
  435. zyvor_guestkit-1.2.2/src/agent/transport/stdio.rs +16 -0
  436. zyvor_guestkit-1.2.2/src/agent/transport/unix_listen.rs +67 -0
  437. zyvor_guestkit-1.2.2/src/agent/transport/virtio.rs +60 -0
  438. zyvor_guestkit-1.2.2/src/agent/transport/vsock.rs +130 -0
  439. zyvor_guestkit-1.2.2/src/agent/transport/vsock_host.rs +239 -0
  440. zyvor_guestkit-1.2.2/src/agent/transport/zeus_push.rs +440 -0
  441. zyvor_guestkit-1.2.2/src/agent/update_sign.rs +121 -0
  442. zyvor_guestkit-1.2.2/src/agent/updater.rs +494 -0
  443. zyvor_guestkit-1.2.2/src/agent/users.rs +184 -0
  444. zyvor_guestkit-1.2.2/src/ai/agent.rs +336 -0
  445. zyvor_guestkit-1.2.2/src/ai/drift.rs +98 -0
  446. zyvor_guestkit-1.2.2/src/ai/intelligence.rs +51 -0
  447. zyvor_guestkit-1.2.2/src/ai/mcp.rs +111 -0
  448. zyvor_guestkit-1.2.2/src/ai/memory.rs +260 -0
  449. zyvor_guestkit-1.2.2/src/ai/mod.rs +57 -0
  450. zyvor_guestkit-1.2.2/src/ai/platform.rs +124 -0
  451. zyvor_guestkit-1.2.2/src/ai/prompts.rs +31 -0
  452. zyvor_guestkit-1.2.2/src/ai/providers.rs +217 -0
  453. zyvor_guestkit-1.2.2/src/ai/recommendations.rs +148 -0
  454. zyvor_guestkit-1.2.2/src/ai/reports.rs +124 -0
  455. zyvor_guestkit-1.2.2/src/ai/rig_tools.rs +156 -0
  456. zyvor_guestkit-1.2.2/src/ai/security_profiles.rs +164 -0
  457. zyvor_guestkit-1.2.2/src/ai/semantic.rs +336 -0
  458. zyvor_guestkit-1.2.2/src/ai/tools.rs +113 -0
  459. zyvor_guestkit-1.2.2/src/ai/whatif.rs +74 -0
  460. zyvor_guestkit-1.2.2/src/assurance/copilot.rs +518 -0
  461. zyvor_guestkit-1.2.2/src/assurance/handoff.rs +180 -0
  462. zyvor_guestkit-1.2.2/src/assurance/mod.rs +529 -0
  463. zyvor_guestkit-1.2.2/src/assurance/passport.rs +1130 -0
  464. zyvor_guestkit-1.2.2/src/assurance/repair_extras.rs +134 -0
  465. zyvor_guestkit-1.2.2/src/bin/guestctl.rs +6 -0
  466. zyvor_guestkit-1.2.2/src/bin/guestkit-qemu.rs +403 -0
  467. zyvor_guestkit-1.2.2/src/bin/virtctl-guestkit.rs +520 -0
  468. zyvor_guestkit-1.2.2/src/bin/zyvor-guest-agent.rs +21 -0
  469. zyvor_guestkit-1.2.2/src/boot/checks.rs +774 -0
  470. zyvor_guestkit-1.2.2/src/boot/engine.rs +152 -0
  471. zyvor_guestkit-1.2.2/src/boot/live.rs +73 -0
  472. zyvor_guestkit-1.2.2/src/boot/mod.rs +14 -0
  473. zyvor_guestkit-1.2.2/src/boot/report.rs +79 -0
  474. zyvor_guestkit-1.2.2/src/cli/agent_sign.rs +70 -0
  475. zyvor_guestkit-1.2.2/src/cli/ai/assistant.rs +269 -0
  476. zyvor_guestkit-1.2.2/src/cli/ai/mod.rs +22 -0
  477. zyvor_guestkit-1.2.2/src/cli/ai/tools.rs +188 -0
  478. zyvor_guestkit-1.2.2/src/cli/batch.rs +455 -0
  479. zyvor_guestkit-1.2.2/src/cli/blueprint/ansible.rs +118 -0
  480. zyvor_guestkit-1.2.2/src/cli/blueprint/compose.rs +164 -0
  481. zyvor_guestkit-1.2.2/src/cli/blueprint/kubernetes.rs +207 -0
  482. zyvor_guestkit-1.2.2/src/cli/blueprint/mod.rs +542 -0
  483. zyvor_guestkit-1.2.2/src/cli/blueprint/terraform.rs +280 -0
  484. zyvor_guestkit-1.2.2/src/cli/cache.rs +300 -0
  485. zyvor_guestkit-1.2.2/src/cli/commands/analysis.rs +2222 -0
  486. zyvor_guestkit-1.2.2/src/cli/commands/assurance.rs +1339 -0
  487. zyvor_guestkit-1.2.2/src/cli/commands/batch.rs +203 -0
  488. zyvor_guestkit-1.2.2/src/cli/commands/disk_ops.rs +1238 -0
  489. zyvor_guestkit-1.2.2/src/cli/commands/file_ops.rs +982 -0
  490. zyvor_guestkit-1.2.2/src/cli/commands/inspect.rs +1486 -0
  491. zyvor_guestkit-1.2.2/src/cli/commands/mcp.rs +44 -0
  492. zyvor_guestkit-1.2.2/src/cli/commands/mod.rs +419 -0
  493. zyvor_guestkit-1.2.2/src/cli/commands/security.rs +5176 -0
  494. zyvor_guestkit-1.2.2/src/cli/commands/systemd.rs +414 -0
  495. zyvor_guestkit-1.2.2/src/cli/commands/tools.rs +654 -0
  496. zyvor_guestkit-1.2.2/src/cli/commands_list.rs +151 -0
  497. zyvor_guestkit-1.2.2/src/cli/cost/analyzer.rs +318 -0
  498. zyvor_guestkit-1.2.2/src/cli/cost/estimator.rs +230 -0
  499. zyvor_guestkit-1.2.2/src/cli/cost/mod.rs +460 -0
  500. zyvor_guestkit-1.2.2/src/cli/cost/reporter.rs +225 -0
  501. zyvor_guestkit-1.2.2/src/cli/cutover_cmd.rs +115 -0
  502. zyvor_guestkit-1.2.2/src/cli/dependencies/analyzer.rs +223 -0
  503. zyvor_guestkit-1.2.2/src/cli/dependencies/graph.rs +213 -0
  504. zyvor_guestkit-1.2.2/src/cli/dependencies/mod.rs +505 -0
  505. zyvor_guestkit-1.2.2/src/cli/dependencies/visualizer.rs +325 -0
  506. zyvor_guestkit-1.2.2/src/cli/diff.rs +513 -0
  507. zyvor_guestkit-1.2.2/src/cli/domain_disks.rs +330 -0
  508. zyvor_guestkit-1.2.2/src/cli/entry.rs +4707 -0
  509. zyvor_guestkit-1.2.2/src/cli/errors.rs +445 -0
  510. zyvor_guestkit-1.2.2/src/cli/exporters/html.rs +146 -0
  511. zyvor_guestkit-1.2.2/src/cli/exporters/markdown.rs +821 -0
  512. zyvor_guestkit-1.2.2/src/cli/exporters/mod.rs +132 -0
  513. zyvor_guestkit-1.2.2/src/cli/exporters/pdf.rs +194 -0
  514. zyvor_guestkit-1.2.2/src/cli/firstboot.rs +252 -0
  515. zyvor_guestkit-1.2.2/src/cli/forensic_diff.rs +201 -0
  516. zyvor_guestkit-1.2.2/src/cli/formatters.rs +445 -0
  517. zyvor_guestkit-1.2.2/src/cli/gate.rs +196 -0
  518. zyvor_guestkit-1.2.2/src/cli/img.rs +69 -0
  519. zyvor_guestkit-1.2.2/src/cli/interactive.rs +5342 -0
  520. zyvor_guestkit-1.2.2/src/cli/inventory/cve.rs +441 -0
  521. zyvor_guestkit-1.2.2/src/cli/inventory/formats.rs +644 -0
  522. zyvor_guestkit-1.2.2/src/cli/inventory/licenses.rs +297 -0
  523. zyvor_guestkit-1.2.2/src/cli/inventory/mod.rs +501 -0
  524. zyvor_guestkit-1.2.2/src/cli/inventory/sbom.rs +76 -0
  525. zyvor_guestkit-1.2.2/src/cli/invocation.rs +74 -0
  526. zyvor_guestkit-1.2.2/src/cli/license/analyzer.rs +71 -0
  527. zyvor_guestkit-1.2.2/src/cli/license/database.rs +193 -0
  528. zyvor_guestkit-1.2.2/src/cli/license/mod.rs +393 -0
  529. zyvor_guestkit-1.2.2/src/cli/license/reporter.rs +122 -0
  530. zyvor_guestkit-1.2.2/src/cli/license/scanner.rs +56 -0
  531. zyvor_guestkit-1.2.2/src/cli/migrate/analyzer.rs +103 -0
  532. zyvor_guestkit-1.2.2/src/cli/migrate/mod.rs +550 -0
  533. zyvor_guestkit-1.2.2/src/cli/migrate/plan.rs +177 -0
  534. zyvor_guestkit-1.2.2/src/cli/migrate/planner.rs +570 -0
  535. zyvor_guestkit-1.2.2/src/cli/migrate/reporter.rs +336 -0
  536. zyvor_guestkit-1.2.2/src/cli/mod.rs +83 -0
  537. zyvor_guestkit-1.2.2/src/cli/output.rs +528 -0
  538. zyvor_guestkit-1.2.2/src/cli/parallel.rs +945 -0
  539. zyvor_guestkit-1.2.2/src/cli/plan/apply.rs +1123 -0
  540. zyvor_guestkit-1.2.2/src/cli/plan/cloud_init.rs +191 -0
  541. zyvor_guestkit-1.2.2/src/cli/plan/command.rs +905 -0
  542. zyvor_guestkit-1.2.2/src/cli/plan/cutover_prep.rs +281 -0
  543. zyvor_guestkit-1.2.2/src/cli/plan/executor_live.rs +1018 -0
  544. zyvor_guestkit-1.2.2/src/cli/plan/export.rs +906 -0
  545. zyvor_guestkit-1.2.2/src/cli/plan/firstboot_stage.rs +323 -0
  546. zyvor_guestkit-1.2.2/src/cli/plan/generator.rs +2419 -0
  547. zyvor_guestkit-1.2.2/src/cli/plan/linux_boot.rs +86 -0
  548. zyvor_guestkit-1.2.2/src/cli/plan/mod.rs +59 -0
  549. zyvor_guestkit-1.2.2/src/cli/plan/package_fetch.rs +312 -0
  550. zyvor_guestkit-1.2.2/src/cli/plan/package_stage.rs +373 -0
  551. zyvor_guestkit-1.2.2/src/cli/plan/preview.rs +654 -0
  552. zyvor_guestkit-1.2.2/src/cli/plan/serial_console.rs +458 -0
  553. zyvor_guestkit-1.2.2/src/cli/plan/topo_sort.rs +57 -0
  554. zyvor_guestkit-1.2.2/src/cli/plan/types.rs +883 -0
  555. zyvor_guestkit-1.2.2/src/cli/profiles/compliance.rs +568 -0
  556. zyvor_guestkit-1.2.2/src/cli/profiles/hardening.rs +573 -0
  557. zyvor_guestkit-1.2.2/src/cli/profiles/migration.rs +409 -0
  558. zyvor_guestkit-1.2.2/src/cli/profiles/mod.rs +338 -0
  559. zyvor_guestkit-1.2.2/src/cli/profiles/performance.rs +308 -0
  560. zyvor_guestkit-1.2.2/src/cli/profiles/security.rs +394 -0
  561. zyvor_guestkit-1.2.2/src/cli/profiles/windows_migration.rs +263 -0
  562. zyvor_guestkit-1.2.2/src/cli/sbom_diff.rs +182 -0
  563. zyvor_guestkit-1.2.2/src/cli/shell/commands/ai.rs +218 -0
  564. zyvor_guestkit-1.2.2/src/cli/shell/commands/analysis.rs +7005 -0
  565. zyvor_guestkit-1.2.2/src/cli/shell/commands/core.rs +610 -0
  566. zyvor_guestkit-1.2.2/src/cli/shell/commands/mod.rs +142 -0
  567. zyvor_guestkit-1.2.2/src/cli/shell/commands/navigation.rs +280 -0
  568. zyvor_guestkit-1.2.2/src/cli/shell/commands/workflow.rs +5498 -0
  569. zyvor_guestkit-1.2.2/src/cli/shell/completion.rs +254 -0
  570. zyvor_guestkit-1.2.2/src/cli/shell/explore.rs +1328 -0
  571. zyvor_guestkit-1.2.2/src/cli/shell/mod.rs +11 -0
  572. zyvor_guestkit-1.2.2/src/cli/shell/repl.rs +563 -0
  573. zyvor_guestkit-1.2.2/src/cli/templates/inspection_report.html +700 -0
  574. zyvor_guestkit-1.2.2/src/cli/tui/app.rs +3049 -0
  575. zyvor_guestkit-1.2.2/src/cli/tui/app_load.rs +1124 -0
  576. zyvor_guestkit-1.2.2/src/cli/tui/cache.rs +113 -0
  577. zyvor_guestkit-1.2.2/src/cli/tui/config.rs +402 -0
  578. zyvor_guestkit-1.2.2/src/cli/tui/events.rs +34 -0
  579. zyvor_guestkit-1.2.2/src/cli/tui/fleet.rs +64 -0
  580. zyvor_guestkit-1.2.2/src/cli/tui/icons.rs +84 -0
  581. zyvor_guestkit-1.2.2/src/cli/tui/loading.rs +89 -0
  582. zyvor_guestkit-1.2.2/src/cli/tui/mod.rs +605 -0
  583. zyvor_guestkit-1.2.2/src/cli/tui/palette.rs +286 -0
  584. zyvor_guestkit-1.2.2/src/cli/tui/plan_preview.rs +152 -0
  585. zyvor_guestkit-1.2.2/src/cli/tui/splash.rs +91 -0
  586. zyvor_guestkit-1.2.2/src/cli/tui/theme.rs +393 -0
  587. zyvor_guestkit-1.2.2/src/cli/tui/ui.rs +2587 -0
  588. zyvor_guestkit-1.2.2/src/cli/tui/views/ai_insights.rs +94 -0
  589. zyvor_guestkit-1.2.2/src/cli/tui/views/analytics.rs +344 -0
  590. zyvor_guestkit-1.2.2/src/cli/tui/views/assurance.rs +197 -0
  591. zyvor_guestkit-1.2.2/src/cli/tui/views/dashboard.rs +402 -0
  592. zyvor_guestkit-1.2.2/src/cli/tui/views/databases.rs +211 -0
  593. zyvor_guestkit-1.2.2/src/cli/tui/views/files.rs +529 -0
  594. zyvor_guestkit-1.2.2/src/cli/tui/views/issues.rs +319 -0
  595. zyvor_guestkit-1.2.2/src/cli/tui/views/kernel.rs +193 -0
  596. zyvor_guestkit-1.2.2/src/cli/tui/views/logs.rs +438 -0
  597. zyvor_guestkit-1.2.2/src/cli/tui/views/mod.rs +26 -0
  598. zyvor_guestkit-1.2.2/src/cli/tui/views/network.rs +257 -0
  599. zyvor_guestkit-1.2.2/src/cli/tui/views/packages.rs +534 -0
  600. zyvor_guestkit-1.2.2/src/cli/tui/views/profiles.rs +199 -0
  601. zyvor_guestkit-1.2.2/src/cli/tui/views/recommendations.rs +641 -0
  602. zyvor_guestkit-1.2.2/src/cli/tui/views/security.rs +216 -0
  603. zyvor_guestkit-1.2.2/src/cli/tui/views/services.rs +542 -0
  604. zyvor_guestkit-1.2.2/src/cli/tui/views/storage.rs +285 -0
  605. zyvor_guestkit-1.2.2/src/cli/tui/views/systemd_deep.rs +118 -0
  606. zyvor_guestkit-1.2.2/src/cli/tui/views/timeline.rs +341 -0
  607. zyvor_guestkit-1.2.2/src/cli/tui/views/topology.rs +537 -0
  608. zyvor_guestkit-1.2.2/src/cli/tui/views/users.rs +484 -0
  609. zyvor_guestkit-1.2.2/src/cli/tui/views/webservers.rs +241 -0
  610. zyvor_guestkit-1.2.2/src/cli/tui/widgets.rs +196 -0
  611. zyvor_guestkit-1.2.2/src/cli/validate/benchmarks.rs +242 -0
  612. zyvor_guestkit-1.2.2/src/cli/validate/cloud_profiles.rs +227 -0
  613. zyvor_guestkit-1.2.2/src/cli/validate/expr.rs +144 -0
  614. zyvor_guestkit-1.2.2/src/cli/validate/mod.rs +733 -0
  615. zyvor_guestkit-1.2.2/src/cli/validate/policy.rs +187 -0
  616. zyvor_guestkit-1.2.2/src/cli/validate/rego.rs +276 -0
  617. zyvor_guestkit-1.2.2/src/cli/validate/rules.rs +26 -0
  618. zyvor_guestkit-1.2.2/src/cli/virtio_win.rs +296 -0
  619. zyvor_guestkit-1.2.2/src/cli/welcome.rs +82 -0
  620. zyvor_guestkit-1.2.2/src/collectors/dbus/login1.rs +68 -0
  621. zyvor_guestkit-1.2.2/src/collectors/dbus/mod.rs +75 -0
  622. zyvor_guestkit-1.2.2/src/collectors/dbus/resolve1.rs +38 -0
  623. zyvor_guestkit-1.2.2/src/collectors/dbus/systemd1.rs +318 -0
  624. zyvor_guestkit-1.2.2/src/collectors/dbus/systemd_events.rs +181 -0
  625. zyvor_guestkit-1.2.2/src/collectors/dbus/timedate1.rs +31 -0
  626. zyvor_guestkit-1.2.2/src/collectors/hardware.rs +65 -0
  627. zyvor_guestkit-1.2.2/src/collectors/mod.rs +22 -0
  628. zyvor_guestkit-1.2.2/src/collectors/network_live.rs +220 -0
  629. zyvor_guestkit-1.2.2/src/collectors/pressure.rs +29 -0
  630. zyvor_guestkit-1.2.2/src/collectors/process.rs +226 -0
  631. zyvor_guestkit-1.2.2/src/collectors/windows_live.rs +715 -0
  632. zyvor_guestkit-1.2.2/src/converters/disk_converter.rs +206 -0
  633. zyvor_guestkit-1.2.2/src/converters/mod.rs +8 -0
  634. zyvor_guestkit-1.2.2/src/core/binary_cache.rs +827 -0
  635. zyvor_guestkit-1.2.2/src/core/diagnostics.rs +234 -0
  636. zyvor_guestkit-1.2.2/src/core/error.rs +65 -0
  637. zyvor_guestkit-1.2.2/src/core/mem_optimize.rs +561 -0
  638. zyvor_guestkit-1.2.2/src/core/mod.rs +24 -0
  639. zyvor_guestkit-1.2.2/src/core/progress.rs +177 -0
  640. zyvor_guestkit-1.2.2/src/core/retry.rs +185 -0
  641. zyvor_guestkit-1.2.2/src/core/systemd/boot.rs +286 -0
  642. zyvor_guestkit-1.2.2/src/core/systemd/journal.rs +336 -0
  643. zyvor_guestkit-1.2.2/src/core/systemd/services.rs +329 -0
  644. zyvor_guestkit-1.2.2/src/core/systemd.rs +253 -0
  645. zyvor_guestkit-1.2.2/src/core/types.rs +122 -0
  646. zyvor_guestkit-1.2.2/src/detectors/guest_detector.rs +226 -0
  647. zyvor_guestkit-1.2.2/src/detectors/mod.rs +8 -0
  648. zyvor_guestkit-1.2.2/src/disk/filesystem.rs +428 -0
  649. zyvor_guestkit-1.2.2/src/disk/loop_device.rs +392 -0
  650. zyvor_guestkit-1.2.2/src/disk/mod.rs +26 -0
  651. zyvor_guestkit-1.2.2/src/disk/nbd.rs +658 -0
  652. zyvor_guestkit-1.2.2/src/disk/partition.rs +236 -0
  653. zyvor_guestkit-1.2.2/src/disk/reader.rs +180 -0
  654. zyvor_guestkit-1.2.2/src/evidence/builder.rs +865 -0
  655. zyvor_guestkit-1.2.2/src/evidence/collectors/cloud_init_live.rs +74 -0
  656. zyvor_guestkit-1.2.2/src/evidence/collectors/kubevirt_live.rs +101 -0
  657. zyvor_guestkit-1.2.2/src/evidence/collectors/mod.rs +36 -0
  658. zyvor_guestkit-1.2.2/src/evidence/collectors/network_probes_live.rs +74 -0
  659. zyvor_guestkit-1.2.2/src/evidence/collectors/snapshot_live.rs +42 -0
  660. zyvor_guestkit-1.2.2/src/evidence/collectors/systemd.rs +461 -0
  661. zyvor_guestkit-1.2.2/src/evidence/collectors/windows.rs +196 -0
  662. zyvor_guestkit-1.2.2/src/evidence/collectors/windows_live.rs +59 -0
  663. zyvor_guestkit-1.2.2/src/evidence/live.rs +670 -0
  664. zyvor_guestkit-1.2.2/src/evidence/mod.rs +25 -0
  665. zyvor_guestkit-1.2.2/src/evidence/snapshot.rs +774 -0
  666. zyvor_guestkit-1.2.2/src/export/html.rs +764 -0
  667. zyvor_guestkit-1.2.2/src/export/kubevirt.rs +513 -0
  668. zyvor_guestkit-1.2.2/src/export/mod.rs +19 -0
  669. zyvor_guestkit-1.2.2/src/export/pdf.rs +508 -0
  670. zyvor_guestkit-1.2.2/src/export/template.rs +399 -0
  671. zyvor_guestkit-1.2.2/src/fleet/analyzer.rs +168 -0
  672. zyvor_guestkit-1.2.2/src/fleet/baseline.rs +182 -0
  673. zyvor_guestkit-1.2.2/src/fleet/mod.rs +16 -0
  674. zyvor_guestkit-1.2.2/src/fleet/quarantine.rs +144 -0
  675. zyvor_guestkit-1.2.2/src/fleet/report.rs +47 -0
  676. zyvor_guestkit-1.2.2/src/fleet/wave.rs +391 -0
  677. zyvor_guestkit-1.2.2/src/guestfs/acl_ops.rs +289 -0
  678. zyvor_guestkit-1.2.2/src/guestfs/archive.rs +641 -0
  679. zyvor_guestkit-1.2.2/src/guestfs/attr_ops.rs +208 -0
  680. zyvor_guestkit-1.2.2/src/guestfs/backup_ops.rs +210 -0
  681. zyvor_guestkit-1.2.2/src/guestfs/base64_ops.rs +70 -0
  682. zyvor_guestkit-1.2.2/src/guestfs/bcache_ops.rs +195 -0
  683. zyvor_guestkit-1.2.2/src/guestfs/blockdev_ops.rs +303 -0
  684. zyvor_guestkit-1.2.2/src/guestfs/boot.rs +297 -0
  685. zyvor_guestkit-1.2.2/src/guestfs/btrfs.rs +409 -0
  686. zyvor_guestkit-1.2.2/src/guestfs/builder.rs +298 -0
  687. zyvor_guestkit-1.2.2/src/guestfs/cap_ops.rs +143 -0
  688. zyvor_guestkit-1.2.2/src/guestfs/checksum.rs +275 -0
  689. zyvor_guestkit-1.2.2/src/guestfs/command.rs +177 -0
  690. zyvor_guestkit-1.2.2/src/guestfs/compress_ops.rs +207 -0
  691. zyvor_guestkit-1.2.2/src/guestfs/cpio_ops.rs +171 -0
  692. zyvor_guestkit-1.2.2/src/guestfs/dd_ops.rs +167 -0
  693. zyvor_guestkit-1.2.2/src/guestfs/device.rs +517 -0
  694. zyvor_guestkit-1.2.2/src/guestfs/device_inventory.rs +348 -0
  695. zyvor_guestkit-1.2.2/src/guestfs/diagnostics.rs +63 -0
  696. zyvor_guestkit-1.2.2/src/guestfs/disk_mgmt.rs +327 -0
  697. zyvor_guestkit-1.2.2/src/guestfs/disk_ops.rs +425 -0
  698. zyvor_guestkit-1.2.2/src/guestfs/dosfs_ops.rs +252 -0
  699. zyvor_guestkit-1.2.2/src/guestfs/ext_ops.rs +398 -0
  700. zyvor_guestkit-1.2.2/src/guestfs/f2fs_ops.rs +208 -0
  701. zyvor_guestkit-1.2.2/src/guestfs/file_ops.rs +942 -0
  702. zyvor_guestkit-1.2.2/src/guestfs/filesystem.rs +373 -0
  703. zyvor_guestkit-1.2.2/src/guestfs/forensic.rs +95 -0
  704. zyvor_guestkit-1.2.2/src/guestfs/fstab.rs +366 -0
  705. zyvor_guestkit-1.2.2/src/guestfs/fstab_rewriter.rs +240 -0
  706. zyvor_guestkit-1.2.2/src/guestfs/glob_ops.rs +239 -0
  707. zyvor_guestkit-1.2.2/src/guestfs/grub_ops.rs +266 -0
  708. zyvor_guestkit-1.2.2/src/guestfs/grub_repair.rs +554 -0
  709. zyvor_guestkit-1.2.2/src/guestfs/handle.rs +1085 -0
  710. zyvor_guestkit-1.2.2/src/guestfs/hivex_ffi.rs +808 -0
  711. zyvor_guestkit-1.2.2/src/guestfs/hivex_ops.rs +595 -0
  712. zyvor_guestkit-1.2.2/src/guestfs/inotify_ops.rs +119 -0
  713. zyvor_guestkit-1.2.2/src/guestfs/inspect.rs +1188 -0
  714. zyvor_guestkit-1.2.2/src/guestfs/inspect_enhanced.rs +2151 -0
  715. zyvor_guestkit-1.2.2/src/guestfs/inspect_ext_ops.rs +293 -0
  716. zyvor_guestkit-1.2.2/src/guestfs/internal.rs +245 -0
  717. zyvor_guestkit-1.2.2/src/guestfs/iso.rs +179 -0
  718. zyvor_guestkit-1.2.2/src/guestfs/jfs_ops.rs +207 -0
  719. zyvor_guestkit-1.2.2/src/guestfs/journal_ops.rs +212 -0
  720. zyvor_guestkit-1.2.2/src/guestfs/label_ops.rs +147 -0
  721. zyvor_guestkit-1.2.2/src/guestfs/ldm_ops.rs +283 -0
  722. zyvor_guestkit-1.2.2/src/guestfs/link_ops.rs +162 -0
  723. zyvor_guestkit-1.2.2/src/guestfs/luks.rs +453 -0
  724. zyvor_guestkit-1.2.2/src/guestfs/lvm.rs +592 -0
  725. zyvor_guestkit-1.2.2/src/guestfs/lvm_clone.rs +3781 -0
  726. zyvor_guestkit-1.2.2/src/guestfs/md_ops.rs +245 -0
  727. zyvor_guestkit-1.2.2/src/guestfs/metadata.rs +579 -0
  728. zyvor_guestkit-1.2.2/src/guestfs/minix_ops.rs +123 -0
  729. zyvor_guestkit-1.2.2/src/guestfs/misc.rs +290 -0
  730. zyvor_guestkit-1.2.2/src/guestfs/mod.rs +121 -0
  731. zyvor_guestkit-1.2.2/src/guestfs/mount.rs +1080 -0
  732. zyvor_guestkit-1.2.2/src/guestfs/mpath_ops.rs +157 -0
  733. zyvor_guestkit-1.2.2/src/guestfs/network.rs +214 -0
  734. zyvor_guestkit-1.2.2/src/guestfs/nilfs_ops.rs +221 -0
  735. zyvor_guestkit-1.2.2/src/guestfs/node_ops.rs +290 -0
  736. zyvor_guestkit-1.2.2/src/guestfs/ntfs.rs +276 -0
  737. zyvor_guestkit-1.2.2/src/guestfs/owner_ops.rs +226 -0
  738. zyvor_guestkit-1.2.2/src/guestfs/package.rs +221 -0
  739. zyvor_guestkit-1.2.2/src/guestfs/package_install.rs +204 -0
  740. zyvor_guestkit-1.2.2/src/guestfs/part_mgmt.rs +401 -0
  741. zyvor_guestkit-1.2.2/src/guestfs/part_type_ops.rs +240 -0
  742. zyvor_guestkit-1.2.2/src/guestfs/partition.rs +286 -0
  743. zyvor_guestkit-1.2.2/src/guestfs/pread_ops.rs +184 -0
  744. zyvor_guestkit-1.2.2/src/guestfs/reiserfs_ops.rs +255 -0
  745. zyvor_guestkit-1.2.2/src/guestfs/rsync_ops.rs +113 -0
  746. zyvor_guestkit-1.2.2/src/guestfs/sam_aes.rs +703 -0
  747. zyvor_guestkit-1.2.2/src/guestfs/sam_password.rs +407 -0
  748. zyvor_guestkit-1.2.2/src/guestfs/security.rs +303 -0
  749. zyvor_guestkit-1.2.2/src/guestfs/security_utils.rs +223 -0
  750. zyvor_guestkit-1.2.2/src/guestfs/sed_ops.rs +213 -0
  751. zyvor_guestkit-1.2.2/src/guestfs/selinux_ops.rs +113 -0
  752. zyvor_guestkit-1.2.2/src/guestfs/service.rs +272 -0
  753. zyvor_guestkit-1.2.2/src/guestfs/shrink.rs +592 -0
  754. zyvor_guestkit-1.2.2/src/guestfs/smart_ops.rs +233 -0
  755. zyvor_guestkit-1.2.2/src/guestfs/squashfs_ops.rs +129 -0
  756. zyvor_guestkit-1.2.2/src/guestfs/ssh.rs +308 -0
  757. zyvor_guestkit-1.2.2/src/guestfs/swap_ops.rs +262 -0
  758. zyvor_guestkit-1.2.2/src/guestfs/sync_ops.rs +106 -0
  759. zyvor_guestkit-1.2.2/src/guestfs/syslinux_ops.rs +98 -0
  760. zyvor_guestkit-1.2.2/src/guestfs/sysprep_ops.rs +223 -0
  761. zyvor_guestkit-1.2.2/src/guestfs/system.rs +349 -0
  762. zyvor_guestkit-1.2.2/src/guestfs/system_info.rs +163 -0
  763. zyvor_guestkit-1.2.2/src/guestfs/template_ops.rs +239 -0
  764. zyvor_guestkit-1.2.2/src/guestfs/time_ops.rs +215 -0
  765. zyvor_guestkit-1.2.2/src/guestfs/transfer.rs +479 -0
  766. zyvor_guestkit-1.2.2/src/guestfs/tsk_ops.rs +213 -0
  767. zyvor_guestkit-1.2.2/src/guestfs/types.rs +396 -0
  768. zyvor_guestkit-1.2.2/src/guestfs/ufs_ops.rs +171 -0
  769. zyvor_guestkit-1.2.2/src/guestfs/util_ops.rs +115 -0
  770. zyvor_guestkit-1.2.2/src/guestfs/utils.rs +324 -0
  771. zyvor_guestkit-1.2.2/src/guestfs/validation.rs +207 -0
  772. zyvor_guestkit-1.2.2/src/guestfs/virt_ops.rs +177 -0
  773. zyvor_guestkit-1.2.2/src/guestfs/windows.rs +259 -0
  774. zyvor_guestkit-1.2.2/src/guestfs/windows_registry.rs +1819 -0
  775. zyvor_guestkit-1.2.2/src/guestfs/xfs.rs +231 -0
  776. zyvor_guestkit-1.2.2/src/guestfs/yara_ops.rs +112 -0
  777. zyvor_guestkit-1.2.2/src/guestfs/zfs_ops.rs +324 -0
  778. zyvor_guestkit-1.2.2/src/health/guest_info.rs +86 -0
  779. zyvor_guestkit-1.2.2/src/health/mod.rs +545 -0
  780. zyvor_guestkit-1.2.2/src/health/platform.rs +22 -0
  781. zyvor_guestkit-1.2.2/src/inference/engine.rs +125 -0
  782. zyvor_guestkit-1.2.2/src/inference/mod.rs +10 -0
  783. zyvor_guestkit-1.2.2/src/inference/report.rs +22 -0
  784. zyvor_guestkit-1.2.2/src/journal/analyze.rs +81 -0
  785. zyvor_guestkit-1.2.2/src/journal/live.rs +25 -0
  786. zyvor_guestkit-1.2.2/src/journal/mod.rs +12 -0
  787. zyvor_guestkit-1.2.2/src/journal/sd_journal.rs +198 -0
  788. zyvor_guestkit-1.2.2/src/journal/sd_journal_native.rs +247 -0
  789. zyvor_guestkit-1.2.2/src/journal/windows_event.rs +101 -0
  790. zyvor_guestkit-1.2.2/src/lib.rs +140 -0
  791. zyvor_guestkit-1.2.2/src/main.rs +8 -0
  792. zyvor_guestkit-1.2.2/src/metrics/live.rs +164 -0
  793. zyvor_guestkit-1.2.2/src/metrics/mod.rs +10 -0
  794. zyvor_guestkit-1.2.2/src/migration/baseline.rs +333 -0
  795. zyvor_guestkit-1.2.2/src/migration/checks.rs +929 -0
  796. zyvor_guestkit-1.2.2/src/migration/mod.rs +21 -0
  797. zyvor_guestkit-1.2.2/src/migration/readiness.rs +154 -0
  798. zyvor_guestkit-1.2.2/src/migration/repair.rs +670 -0
  799. zyvor_guestkit-1.2.2/src/migration/score.rs +160 -0
  800. zyvor_guestkit-1.2.2/src/migration/workflow.rs +338 -0
  801. zyvor_guestkit-1.2.2/src/python.rs +4335 -0
  802. zyvor_guestkit-1.2.2/src/qemu/config.rs +1080 -0
  803. zyvor_guestkit-1.2.2/src/qemu/guestkit.rs +380 -0
  804. zyvor_guestkit-1.2.2/src/qemu/img.rs +174 -0
  805. zyvor_guestkit-1.2.2/src/qemu/mod.rs +25 -0
  806. zyvor_guestkit-1.2.2/src/qemu/qmp.rs +186 -0
  807. zyvor_guestkit-1.2.2/src/storage/azure.rs +131 -0
  808. zyvor_guestkit-1.2.2/src/storage/cloud_cache.rs +107 -0
  809. zyvor_guestkit-1.2.2/src/storage/gcs.rs +98 -0
  810. zyvor_guestkit-1.2.2/src/storage/local.rs +55 -0
  811. zyvor_guestkit-1.2.2/src/storage/mod.rs +18 -0
  812. zyvor_guestkit-1.2.2/src/storage/s3.rs +99 -0
  813. zyvor_guestkit-1.2.2/src/storage/uri.rs +72 -0
  814. zyvor_guestkit-1.2.2/src/templates/report.css +284 -0
  815. zyvor_guestkit-1.2.2/src/virtctl_guestfs.rs +494 -0
  816. zyvor_guestkit-1.2.2/src/vm.rs +1223 -0
  817. zyvor_guestkit-1.2.2/templates/agent/agent-policy.yaml +63 -0
  818. zyvor_guestkit-1.2.2/templates/agent/guest-agent-windows.toml +11 -0
  819. zyvor_guestkit-1.2.2/templates/agent/guest-agent.toml +9 -0
  820. zyvor_guestkit-1.2.2/templates/agent/guestkit-agent.service +50 -0
  821. zyvor_guestkit-1.2.2/templates/agent/hooks/pre-snapshot/mysql-flush.sh +15 -0
  822. zyvor_guestkit-1.2.2/templates/agent/hooks/pre-snapshot/postgres-flush.sh +15 -0
  823. zyvor_guestkit-1.2.2/templates/agent/windows/register-updater-task.ps1 +18 -0
  824. zyvor_guestkit-1.2.2/templates/agent/zyvor-guest-agent-exec.service +17 -0
  825. zyvor_guestkit-1.2.2/templates/agent/zyvor-guest-agent.service +35 -0
  826. zyvor_guestkit-1.2.2/templates/agent/zyvor-guest-updater.service +12 -0
  827. zyvor_guestkit-1.2.2/templates/agent/zyvor-guest-updater.timer +11 -0
  828. zyvor_guestkit-1.2.2/templates/html_detailed.tpl +132 -0
  829. zyvor_guestkit-1.2.2/templates/html_minimal.tpl +21 -0
  830. zyvor_guestkit-1.2.2/templates/html_standard.tpl +80 -0
  831. zyvor_guestkit-1.2.2/templates/markdown_detailed.tpl +71 -0
  832. zyvor_guestkit-1.2.2/templates/markdown_minimal.tpl +10 -0
  833. zyvor_guestkit-1.2.2/templates/markdown_standard.tpl +26 -0
  834. zyvor_guestkit-1.2.2/templates/text_minimal.tpl +10 -0
  835. zyvor_guestkit-1.2.2/templates/text_standard.tpl +25 -0
  836. zyvor_guestkit-1.2.2/test_colors_demo.sh +74 -0
  837. zyvor_guestkit-1.2.2/test_results.txt +157 -0
  838. zyvor_guestkit-1.2.2/tests/agent_heartbeat_push.rs +143 -0
  839. zyvor_guestkit-1.2.2/tests/agent_integration.rs +314 -0
  840. zyvor_guestkit-1.2.2/tests/arch_realistic.rs +733 -0
  841. zyvor_guestkit-1.2.2/tests/assurance_integration.rs +352 -0
  842. zyvor_guestkit-1.2.2/tests/blueprint/mod.rs +375 -0
  843. zyvor_guestkit-1.2.2/tests/cli_guestctl_test.rs +94 -0
  844. zyvor_guestkit-1.2.2/tests/cost/mod.rs +342 -0
  845. zyvor_guestkit-1.2.2/tests/debian_realistic.rs +947 -0
  846. zyvor_guestkit-1.2.2/tests/dependencies/mod.rs +496 -0
  847. zyvor_guestkit-1.2.2/tests/helpers/mock_disk.rs +359 -0
  848. zyvor_guestkit-1.2.2/tests/helpers/mod.rs +8 -0
  849. zyvor_guestkit-1.2.2/tests/integration_basic.rs +412 -0
  850. zyvor_guestkit-1.2.2/tests/integration_error_handling.rs +355 -0
  851. zyvor_guestkit-1.2.2/tests/integration_lvm_luks.rs +297 -0
  852. zyvor_guestkit-1.2.2/tests/license/mod.rs +321 -0
  853. zyvor_guestkit-1.2.2/tests/migrate/mod.rs +361 -0
  854. zyvor_guestkit-1.2.2/tests/output_formats_test.rs +86 -0
  855. zyvor_guestkit-1.2.2/tests/panic_safety.rs +258 -0
  856. zyvor_guestkit-1.2.2/tests/performance_validation.rs +431 -0
  857. zyvor_guestkit-1.2.2/tests/phase3_comprehensive.rs +445 -0
  858. zyvor_guestkit-1.2.2/tests/phase3_windows.rs +479 -0
  859. zyvor_guestkit-1.2.2/tests/qemu_runtime.rs +55 -0
  860. zyvor_guestkit-1.2.2/tests/registry_write.rs +90 -0
  861. zyvor_guestkit-1.2.2/tests/security_tests.rs +225 -0
  862. zyvor_guestkit-1.2.2/tests/test_license.rs +188 -0
  863. zyvor_guestkit-1.2.2/tests/test_python_bindings.py +382 -0
  864. zyvor_guestkit-1.2.2/tests/ubuntu_realistic.rs +666 -0
  865. zyvor_guestkit-1.2.2/tests/vm_runtime.rs +185 -0
  866. zyvor_guestkit-1.2.2/tests/windows_realistic.rs +680 -0
  867. zyvor_guestkit-1.2.2/website/.gitignore +20 -0
  868. zyvor_guestkit-1.2.2/website/README.md +23 -0
  869. zyvor_guestkit-1.2.2/website/docusaurus.config.ts +113 -0
  870. zyvor_guestkit-1.2.2/website/package-lock.json +19555 -0
  871. zyvor_guestkit-1.2.2/website/package.json +49 -0
  872. zyvor_guestkit-1.2.2/website/sidebars.ts +9 -0
  873. zyvor_guestkit-1.2.2/website/src/components/FeatureHighlights/index.tsx +74 -0
  874. zyvor_guestkit-1.2.2/website/src/components/FeatureHighlights/styles.module.css +30 -0
  875. zyvor_guestkit-1.2.2/website/src/components/Reveal/index.tsx +49 -0
  876. zyvor_guestkit-1.2.2/website/src/css/custom.css +199 -0
  877. zyvor_guestkit-1.2.2/website/src/pages/index.module.css +76 -0
  878. zyvor_guestkit-1.2.2/website/src/pages/index.tsx +156 -0
  879. zyvor_guestkit-1.2.2/website/static/.nojekyll +0 -0
  880. zyvor_guestkit-1.2.2/website/static/img/favicon.svg +13 -0
  881. zyvor_guestkit-1.2.2/website/tsconfig.json +12 -0
@@ -0,0 +1,9 @@
1
+ [target.x86_64-pc-windows-gnu]
2
+ linker = "x86_64-w64-mingw32-gcc"
3
+
4
+ [target.aarch64-apple-darwin]
5
+ # Homebrew on Apple Silicon installs to /opt/homebrew, which isn't on the
6
+ # default linker search path - needed to link libhivex (registry-write
7
+ # feature). No-op on Linux (production target) or x86_64 Mac (Homebrew
8
+ # uses /usr/local, already searched by default).
9
+ rustflags = ["-L", "/opt/homebrew/lib"]
@@ -0,0 +1,69 @@
1
+ # Build artifacts
2
+ target/
3
+ **/target/
4
+ crates/*/target/
5
+ *.so
6
+ *.pyc
7
+ *.pyo
8
+ __pycache__/
9
+
10
+ # IDE and editor files
11
+ .vscode/
12
+ .idea/
13
+ *.swp
14
+ *.swo
15
+ *~
16
+ .DS_Store
17
+
18
+ # Git
19
+ .git/
20
+ .gitignore
21
+ .github/
22
+
23
+ # Documentation
24
+ *.md
25
+ !README.md
26
+ docs/
27
+
28
+ # Test files
29
+ *.qcow2
30
+ *.vmdk
31
+ *.vdi
32
+ *.vhdx
33
+ *.raw
34
+ *.img
35
+ *.iso
36
+ vms/
37
+
38
+ # Python
39
+ .venv/
40
+ venv/
41
+ *.egg-info/
42
+ dist/
43
+ build/
44
+ .pytest_cache/
45
+
46
+ # Temporary files
47
+ *.tmp
48
+ *.log
49
+ .cache/
50
+
51
+ # Docker files (don't need in build context except Dockerfile)
52
+ docker-compose.yml
53
+ .dockerignore
54
+
55
+ # CI/CD
56
+ .github/
57
+ .claude/
58
+
59
+ # RPM build
60
+ *.spec
61
+ RPM-BUILD.md
62
+
63
+ # Integration tests
64
+ integration/
65
+
66
+ # Scripts
67
+ scripts/
68
+ test_*.sh
69
+ build_python.sh
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: Bug Report
3
+ about: Report a bug in the open-source repo (not for sales or enterprise quotes)
4
+ title: "[BUG] "
5
+ labels: bug
6
+ ---
7
+
8
+ > **Enterprise / sales / SLAs / VMware exit programs** → [zyvor.dev/contact](https://zyvor.dev/contact?utm_source=github&utm_medium=guestkit) or [sales@zyvor.dev](mailto:sales@zyvor.dev) — do not use this form.
9
+
10
+ ## Bug Description
11
+
12
+ ## To Reproduce
13
+
14
+ 1.
15
+ 2.
16
+ 3.
17
+
18
+ ## Expected Behavior
19
+
20
+ ## Actual Behavior
21
+
22
+ ## Environment
23
+
24
+ - guestctl version:
25
+ - OS:
26
+ - Disk format:
27
+
28
+ ## Logs
29
+
30
+ ```text
31
+ (paste relevant output)
32
+ ```
@@ -0,0 +1,23 @@
1
+ blank_issues_enabled: false
2
+ contact_links:
3
+ - name: "▶ Watch migration demo (video + dashboard)"
4
+ url: https://zyvor.dev/demo?utm_source=github&utm_medium=guestkit
5
+ about: Migration video and live dashboard tour at zyvor.dev/demo
6
+ - name: "🏢 Enterprise, sales & SLAs (Zyvor)"
7
+ url: https://zyvor.dev/contact?utm_source=github&utm_medium=guestkit
8
+ about: Production migrations, VMware exit, licensing, and guided demos — not for GitHub Issues
9
+ - name: "📧 Email sales"
10
+ url: mailto:sales@zyvor.dev
11
+ about: sales@zyvor.dev — enterprise quotes and migration programs
12
+ - name: "ROI calculator"
13
+ url: https://zyvor.dev/roi?utm_source=github&utm_medium=guestkit
14
+ about: Estimate savings from VMware exit and platform migration
15
+ - name: "CE vs Enterprise"
16
+ url: https://github.com/zyvorai/guestkit/blob/main/docs/ce-vs-enterprise.md
17
+ about: When to use this GitHub repo vs contact Zyvor for production
18
+ - name: "💬 Discussions"
19
+ url: https://github.com/zyvorai/guestkit/discussions
20
+ about: Community questions and ideas
21
+ - name: "🔐 Security"
22
+ url: https://github.com/zyvorai/guestkit/blob/main/SECURITY.md
23
+ about: Report vulnerabilities privately (not for sales)
@@ -0,0 +1,16 @@
1
+ ---
2
+ name: Feature Request
3
+ about: Suggest an enhancement for the open-source repo
4
+ title: "[FEATURE] "
5
+ labels: enhancement
6
+ ---
7
+
8
+ > **Enterprise platform features** (dashboard, SLAs, fleet orchestration) → [zyvor.dev/contact](https://zyvor.dev/contact?utm_source=github&utm_medium=guestkit)
9
+
10
+ ## Problem
11
+
12
+ ## Proposed Solution
13
+
14
+ ## Alternatives
15
+
16
+ ## Additional Context
@@ -0,0 +1,17 @@
1
+ ## Release notes
2
+
3
+ <!-- Describe changes -->
4
+
5
+ ## Open source
6
+
7
+ This release is the open-source **GuestKit** toolkit on GitHub.
8
+
9
+ ## Enterprise & production
10
+
11
+ For VMware exit programs, fleet migrations, SLAs, and the full **HyperSDK Platform** suite ([HyperSDK](https://zyvor.dev/hypersdk) · [hyper2kvm](https://zyvor.dev/hyper2kvm) · GuestKit · [v9s](https://zyvor.dev/v9s) · [PacketWolf](https://zyvor.dev/packetwolf)):
12
+
13
+ - **Platform:** https://zyvor.dev/?utm_source=github&utm_medium=guestkit
14
+ - **Contact:** https://zyvor.dev/contact?utm_source=github&utm_medium=guestkit
15
+ - **Sales:** sales@zyvor.dev
16
+
17
+ **Full comparison:** [docs/ce-vs-enterprise.md](docs/ce-vs-enterprise.md)
@@ -0,0 +1,89 @@
1
+ name: 'GuestKit rescue dry-run'
2
+ description: 'Export a reviewable rescue FixPlan from a disk image. Does not mutate the image.'
3
+ author: 'zyvorai'
4
+
5
+ branding:
6
+ icon: 'life-buoy'
7
+ color: 'purple'
8
+
9
+ inputs:
10
+ disk:
11
+ description: 'Path to the disk image.'
12
+ required: true
13
+ operation:
14
+ description: 'Rescue operation (enable-ssh, fix-fstab, enable-rdp, set-hostname, …).'
15
+ required: true
16
+ user:
17
+ description: 'Username when the operation needs one.'
18
+ required: false
19
+ default: ''
20
+ hostname:
21
+ description: 'Hostname for set-hostname.'
22
+ required: false
23
+ default: ''
24
+ version:
25
+ description: 'GuestKit release to install. Defaults to latest.'
26
+ required: false
27
+ default: 'latest'
28
+ artifact-name:
29
+ description: 'Upload artifact name. Empty disables upload.'
30
+ required: false
31
+ default: 'guestkit-rescue-plan'
32
+
33
+ outputs:
34
+ plan-path:
35
+ description: 'Path to the exported FixPlan YAML.'
36
+ value: ${{ steps.run.outputs.plan-path }}
37
+
38
+ runs:
39
+ using: 'composite'
40
+ steps:
41
+ - name: Resolve and install GuestKit
42
+ id: install
43
+ shell: bash
44
+ run: |
45
+ set -euo pipefail
46
+ VERSION="${{ inputs.version }}"
47
+ if [[ "${VERSION}" == "latest" ]]; then
48
+ BODY="$(curl -fsSL https://api.github.com/repos/zyvorai/guestkit/releases/latest)"
49
+ VERSION="$(printf '%s' "${BODY}" | grep -m1 '"tag_name"' | sed -E 's/.*"v?([^"]+)".*/\1/')"
50
+ fi
51
+ VERSION="${VERSION#v}"
52
+ ASSET="guestkit-${VERSION}-linux-amd64.tar.gz"
53
+ BASE_URL="https://github.com/zyvorai/guestkit/releases/download/v${VERSION}"
54
+ WORKDIR="${RUNNER_TEMP}/guestkit-rescue-install"
55
+ mkdir -p "${WORKDIR}"
56
+ cd "${WORKDIR}"
57
+ curl -fsSL -o "${ASSET}" "${BASE_URL}/${ASSET}"
58
+ tar -xzf "${ASSET}"
59
+ BIN_PATH="$(find "${WORKDIR}" -mindepth 1 -maxdepth 2 -type f -name guestkit | head -n1)"
60
+ chmod +x "${BIN_PATH}"
61
+ echo "GUESTKIT_BIN=${BIN_PATH}" >> "$GITHUB_ENV"
62
+
63
+ - name: Export rescue plan (no apply)
64
+ id: run
65
+ shell: bash
66
+ env:
67
+ GK_DISK: ${{ inputs.disk }}
68
+ GK_OP: ${{ inputs.operation }}
69
+ GK_USER: ${{ inputs.user }}
70
+ GK_HOST: ${{ inputs.hostname }}
71
+ run: |
72
+ set -euo pipefail
73
+ OUT="${RUNNER_TEMP}/guestkit-rescue"
74
+ mkdir -p "${OUT}"
75
+ guestkit() { sudo "${GUESTKIT_BIN}" "$@"; }
76
+ ARGS=(rescue "${GK_DISK}" -o "${GK_OP}" --export-plan "${OUT}/rescue.yaml")
77
+ [[ -n "${GK_USER}" ]] && ARGS+=(-u "${GK_USER}")
78
+ [[ -n "${GK_HOST}" ]] && ARGS+=(--hostname "${GK_HOST}")
79
+ guestkit "${ARGS[@]}"
80
+ echo "plan-path=${OUT}/rescue.yaml" >> "$GITHUB_OUTPUT"
81
+ echo "GK_RESCUE_OUT=${OUT}" >> "$GITHUB_ENV"
82
+
83
+ - name: Upload rescue plan
84
+ if: always() && inputs.artifact-name != ''
85
+ uses: actions/upload-artifact@v4
86
+ with:
87
+ name: ${{ inputs.artifact-name }}
88
+ path: ${{ env.GK_RESCUE_OUT }}/rescue.yaml
89
+ if-no-files-found: ignore
@@ -0,0 +1,115 @@
1
+ # Copilot instructions for guestkit
2
+
3
+ Purpose: quick, actionable guidance for AI-assisted coding sessions in this repository.
4
+
5
+ Build, test, and lint
6
+ - Build (dev): cargo build
7
+ - Build (release): cargo build --release
8
+ - Cross / musl: cargo build --release --target x86_64-unknown-linux-musl
9
+ - Install locally: cargo install --path .
10
+ - Build examples: cargo build --examples
11
+ - Build docs: cargo doc --no-deps --all-features
12
+
13
+ Rust tests
14
+ - Run all tests: cargo test
15
+ - Run a single test by name (pattern): cargo test <test_name>
16
+ Example: cargo test test_partition_parsing
17
+ - Run a single test exact name: cargo test -- --test-threads=1 <filter>
18
+ (Usually: cargo test <fn_name> -- --nocapture)
19
+ - CI runs: cargo test --verbose
20
+
21
+ Python (PyO3) tests
22
+ - Build the Python extension first: maturin develop --release --features python-bindings
23
+ - Run Python tests: pytest tests/ or pytest integration/tests/test_integration.py::test_version_command
24
+
25
+ Linting & formatting
26
+ - Formatting check (CI): cargo fmt -- --check
27
+ - Apply formatting: cargo fmt
28
+ - Linting (CI): cargo clippy --all-targets --all-features -- -D warnings
29
+
30
+ High-level architecture (big picture)
31
+ - Purpose: offline VM disk inspection (qcow2, vmdk, raw) with reporting, TUI, REPL, and optional Python bindings.
32
+ - Layers (top → bottom):
33
+ 1. Applications / CLI / TUI / Python bindings (entrypoints in src/cli/, src/python.rs)
34
+ 2. High-level Rust API (converters, guest detection, pipelines)
35
+ 3. Pure-Rust disk layer (src/disk/): DiskReader, partition parsing, filesystem detection
36
+ 4. Core utilities: error types, retry logic, types
37
+ 5. Optional external tools: qemu-img / qemu-nbd used only for conversion/fallback
38
+ - Key modules to consult:
39
+ - src/cli/ — commands, profiles, exporters, TUI, interactive shell
40
+ - src/disk/ — reader, partition, filesystem, loop_device, nbd fallback
41
+ - src/detectors/ — guest OS detection logic
42
+ - src/converters — qemu-img wrapper for format conversion
43
+ - src/python.rs — PyO3 bindings and Python integration surface
44
+ - docs/architecture/overview.md — more detailed design notes
45
+
46
+ Key conventions and repository-specific patterns
47
+ - No C dependencies: core disk parsing is implemented in pure Rust; qemu-img/qemu-nbd are optional external tools used only for conversion or advanced formats.
48
+ - Device strategy: LoopDevice is preferred (fast path for RAW/IMG); NBD (qemu-nbd) used as fallback for QCOW2/VMDK; this strategy is implemented in Guestfs::launch().
49
+ - Cargo features:
50
+ - default = ["guest-inspect", "journal-native"]
51
+ - python-bindings (enable PyO3 / maturin)
52
+ - ai (optional rig-core + reqwest)
53
+ Build with features where relevant: cargo build --features python-bindings
54
+ - Tests:
55
+ - Rust unit tests live inline in modules (use cargo test)
56
+ - Python integration/tests under tests/ and integration/tests/ (use maturin then pytest)
57
+ - CI expectations:
58
+ - Formatting (rustfmt) and clippy warnings are enforced as errors in CI. Keep changes clean: run cargo fmt and cargo clippy locally before opening PRs.
59
+ - Examples, docs and release artifacts are built in CI; see .github/workflows/ci.yml for exact steps.
60
+ - Error handling: use the crate Result<T> alias and the central Error enum (thiserror) — follow existing patterns in src/core and modules.
61
+ - Minimal unsafe: unsafe blocks are rare and audited; assume disk byte reads and memmap2 use are the main areas.
62
+
63
+ Where to look first
64
+ - README.md (quick start & examples)
65
+ - docs/architecture/overview.md (design + module map)
66
+ - src/disk/ and src/detectors/ for the core inspection logic
67
+ - src/cli/ for how CLI commands wire into the API
68
+
69
+ Notes for Copilot sessions
70
+ - Suggest concrete edits: add tiny, focused changes (tests, docs, clippy fixes). Broad redesigns should be broken into multiple PR-sized steps.
71
+ - When changing behavior touching disk handling, run unit tests and, where applicable, the Python integration tests after rebuilding the Python extension.
72
+ - Respect CI: run cargo fmt and cargo clippy locally with the CI flags to avoid churn.
73
+
74
+ Reference files
75
+ - .github/workflows/ci.yml — CI steps (formatting, clippy, build, tests, docs)
76
+ - Cargo.toml — features, dev-dependencies and targets
77
+ - docs/architecture/overview.md — expanded architecture
78
+
79
+ Releasing & publishing
80
+
81
+ Publishing crate to crates.io
82
+ - Prepare:
83
+ - Bump version in Cargo.toml and optionally update CHANGELOG.md and release notes.
84
+ - Ensure repo is clean, all tests pass, and cargo fmt/clippy run without warnings.
85
+ - Verify package contents: cargo package --allow-dirty --no-verify (recommended to run without --allow-dirty on CI)
86
+ - Dry run: cargo publish --dry-run
87
+ - Publish: cargo publish
88
+ - Requires a crates.io API token configured via `cargo login <TOKEN>` or CARGO_REGISTRY_TOKEN env var.
89
+ - Tag & release: create an annotated git tag and push tags; create a GitHub Release with notes.
90
+ Commands (example):
91
+ git tag -s vX.Y.Z -m "guestkit vX.Y.Z" && git push && git push --tags
92
+ gh release create vX.Y.Z target/x86_64-unknown-linux-gnu/release/guestkit -t "guestkit vX.Y.Z" -n "Release notes"
93
+
94
+ Publishing Python wheels to PyPI (PyO3)
95
+ - Build and test locally:
96
+ - maturin build --release --features python-bindings
97
+ - pip install --force-reinstall target/wheels/guestkit-*.whl && pytest tests/
98
+ - Publish to PyPI: maturin publish -u __token__ -p "$PYPI_API_TOKEN"
99
+ - Provide PYPI_API_TOKEN via secrets (recommended) or pass credentials interactively.
100
+ - Alternative: build wheel then upload via twine: twine upload target/wheels/*
101
+
102
+ GitHub Releases (binaries & artifacts)
103
+ - `.github/workflows/release.yml` already automates this end to end on a tag push: it builds/uploads binary artifacts per target, creates the GitHub Release via `softprops/action-gh-release@v2`, and runs `cargo publish`. Pushing an annotated tag is normally all that's needed.
104
+ - To publish manually instead: download artifacts from CI or build locally for each target, then `gh release create vX.Y.Z path/to/artifact -t "vX.Y.Z" -n "Notes"`.
105
+
106
+ Release checklist (quick)
107
+ - Run cargo fmt && cargo clippy --all-targets --all-features -- -D warnings
108
+ - cargo test && cargo doc --no-deps
109
+ - cargo package && cargo publish --dry-run
110
+ - Create signed git tag and push
111
+ - Create GitHub Release (attach CI artifacts)
112
+ - For Python: maturin build, test wheel, maturin publish
113
+
114
+ Automation
115
+ - `.github/workflows/release.yml` is the fully automated tag→release pipeline described above — it already exists, gated to trusted maintainers via repo secrets.
@@ -0,0 +1,70 @@
1
+ name: Agent Release (manual)
2
+
3
+ # Agent artifacts are built and attached to GitHub Releases by release.yml on v* tags.
4
+ # Use this workflow only to rebuild VM tools artifacts without cutting a release.
5
+
6
+ on:
7
+ workflow_dispatch:
8
+ inputs:
9
+ version:
10
+ description: "Attach artifacts to GitHub release v<version> (e.g. 1.0.1); leave empty for CI artifacts only"
11
+ required: false
12
+ default: ""
13
+
14
+ jobs:
15
+ build-agent-musl:
16
+ runs-on: ubuntu-latest
17
+ permissions:
18
+ contents: write
19
+ steps:
20
+ - uses: actions/checkout@v4
21
+
22
+ - name: Install toolchain
23
+ run: |
24
+ sudo apt-get update
25
+ sudo apt-get install -y musl-tools genisoimage
26
+ rustup target add x86_64-unknown-linux-musl
27
+
28
+ - name: Build Zeus VM Tools artifacts
29
+ env:
30
+ VERSION: ${{ inputs.version != '' && inputs.version || '0.0.0-dev' }}
31
+ run: bash packaging/vmtools/build-artifacts.sh
32
+
33
+ - name: Upload Linux tarball
34
+ uses: actions/upload-artifact@v4
35
+ with:
36
+ name: zyvor-vm-tools-linux-amd64
37
+ path: |
38
+ dist/vmtools/linux/zyvor-vm-tools-linux-amd64.tar.gz
39
+ dist/vmtools/linux/zyvor-vm-tools-linux-amd64.tar.gz.sha256
40
+
41
+ - name: Upload DEB
42
+ uses: actions/upload-artifact@v4
43
+ with:
44
+ name: zyvor-vm-tools-deb
45
+ path: dist/vmtools/linux/zyvor-vm-tools_*_amd64.deb
46
+
47
+ - name: Upload ISO
48
+ uses: actions/upload-artifact@v4
49
+ with:
50
+ name: zyvor-vm-tools-iso
51
+ path: dist/vmtools/zyvor-vm-tools.iso
52
+ if-no-files-found: ignore
53
+
54
+ - name: Upload to GitHub Release
55
+ if: inputs.version != ''
56
+ env:
57
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
58
+ VERSION: ${{ inputs.version }}
59
+ run: |
60
+ set -euo pipefail
61
+ TAG="v${VERSION}"
62
+ FILES=(
63
+ dist/vmtools/linux/zyvor-vm-tools-linux-amd64.tar.gz
64
+ dist/vmtools/linux/zyvor-vm-tools-linux-amd64.tar.gz.sha256
65
+ "dist/vmtools/linux/zyvor-vm-tools_${VERSION}_amd64.deb"
66
+ )
67
+ if [[ -f dist/vmtools/zyvor-vm-tools.iso ]]; then
68
+ FILES+=(dist/vmtools/zyvor-vm-tools.iso)
69
+ fi
70
+ gh release upload "${TAG}" "${FILES[@]}" --clobber
@@ -0,0 +1,143 @@
1
+ name: Build and Publish Python Wheels
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+ workflow_dispatch:
8
+ inputs:
9
+ publish:
10
+ description: 'Publish to PyPI'
11
+ required: false
12
+ default: 'false'
13
+
14
+ permissions:
15
+ contents: read
16
+
17
+ jobs:
18
+ linux:
19
+ name: Build wheels for Linux ${{ matrix.target }}
20
+ runs-on: ubuntu-latest
21
+ strategy:
22
+ matrix:
23
+ # aarch64 manylinux cross image fails in CI; macOS needs Linux-only libc gated
24
+ target: [x86_64]
25
+ steps:
26
+ - uses: actions/checkout@v4
27
+
28
+ - uses: actions/setup-python@v5
29
+ with:
30
+ python-version: '3.11'
31
+
32
+ - name: Build wheels
33
+ uses: PyO3/maturin-action@v1
34
+ with:
35
+ target: ${{ matrix.target }}
36
+ args: --release --out dist --features python-bindings
37
+ sccache: 'true'
38
+ manylinux: auto
39
+ before-script-linux: |
40
+ yum install -y openssl-devel systemd-devel
41
+
42
+ - name: Upload wheels
43
+ uses: actions/upload-artifact@v4
44
+ with:
45
+ name: wheels-linux-${{ matrix.target }}
46
+ path: dist
47
+ retention-days: 7
48
+
49
+ sdist:
50
+ name: Build source distribution
51
+ runs-on: ubuntu-latest
52
+ steps:
53
+ - uses: actions/checkout@v4
54
+
55
+ - name: Build sdist
56
+ uses: PyO3/maturin-action@v1
57
+ with:
58
+ command: sdist
59
+ args: --out dist
60
+
61
+ - name: Upload sdist
62
+ uses: actions/upload-artifact@v4
63
+ with:
64
+ name: wheels-sdist
65
+ path: dist
66
+ retention-days: 7
67
+
68
+ publish:
69
+ name: Publish to PyPI
70
+ runs-on: ubuntu-latest
71
+ needs: [linux, sdist]
72
+ # Only publish on tag pushes or manual workflow with publish=true
73
+ if: |
74
+ startsWith(github.ref, 'refs/tags/') ||
75
+ (github.event_name == 'workflow_dispatch' && github.event.inputs.publish == 'true')
76
+ environment:
77
+ name: pypi
78
+ url: https://pypi.org/p/zyvor-guestkit
79
+ permissions:
80
+ id-token: write # IMPORTANT: this permission is mandatory for trusted publishing
81
+ steps:
82
+ - name: Download all artifacts
83
+ uses: actions/download-artifact@v4
84
+ with:
85
+ pattern: wheels-*
86
+ merge-multiple: true
87
+ path: dist
88
+
89
+ - name: List distributions
90
+ run: ls -lh dist/
91
+
92
+ - name: Publish to PyPI
93
+ uses: pypa/gh-action-pypi-publish@release/v1
94
+ with:
95
+ password: ${{ secrets.PYPI_API_TOKEN }}
96
+ skip-existing: true
97
+ verbose: true
98
+
99
+ test-install:
100
+ name: Test installation
101
+ runs-on: ${{ matrix.os }}
102
+ needs: [linux]
103
+ strategy:
104
+ matrix:
105
+ os: [ubuntu-latest]
106
+ python-version: ['3.8', '3.11', '3.12']
107
+ steps:
108
+ - name: Download wheels
109
+ uses: actions/download-artifact@v4
110
+ with:
111
+ pattern: wheels-*
112
+ merge-multiple: true
113
+ path: dist
114
+
115
+ - uses: actions/setup-python@v5
116
+ with:
117
+ python-version: ${{ matrix.python-version }}
118
+
119
+ - name: Install from wheel
120
+ run: |
121
+ pip install --no-index --find-links dist --only-binary=:all: zyvor-guestkit
122
+
123
+ - name: Test import
124
+ run: |
125
+ python -c "from guestkit import Guestfs; print('✓ Guestfs imported successfully')"
126
+ python -c "from guestkit import DiskConverter; print('✓ DiskConverter imported successfully')"
127
+
128
+ - name: Test assurance APIs (v1.1.0+)
129
+ run: |
130
+ python -c "
131
+ import guestkit
132
+ for fn in ('run_doctor','run_boot_inspect','run_migrate_plan','run_repair_plan','run_migrate_repair'):
133
+ assert hasattr(guestkit, fn), fn
134
+ print('✓ assurance APIs present')
135
+ "
136
+
137
+ - name: Test context manager
138
+ run: |
139
+ python -c "from guestkit import Guestfs; g = Guestfs(); print('✓ Guestfs instantiated')"
140
+
141
+ - name: Show version
142
+ run: |
143
+ python -c "import guestkit; print('guestkit version:', getattr(guestkit, '__version__', 'unknown'))"