Repository navigation
Conversation
vvaldez
force-pushed
the
postflight-role
branch
from
October 17, 2026 18:15
5a5978b to
cfde922
Compare
Contributor
|
@vvaldez As discussed, we are going to hold off on this type of feature until we get more information from the field on the types of pre/post flight activities |
vvaldez
force-pushed
the
postflight-role
branch
from
October 20, 2026 17:03
cfde922 to
c6ef322
Compare
vvaldez
force-pushed
the
postflight-role
branch
from
October 20, 2026 17:12
c6ef322 to
f9aeefa
Compare
validate_migration validates outcomes after vmf_migrate: migration status, VM presence and running state, target list, guest agent, IP addresses, disk topology, and the per-VM fail-closed source power-off (docs/adr/0001). The source power-off uses certified vmware.vmware.vm_powerstate; gathering stays on SOAP-only community.vmware.vmware_guest_info (documented tier-3 exception). Adds utility_v2v_nofstrim_shim.yml for MTV 2.11/2.12 on pre-x86-64-v3 CPUs. Validated live on pool1 across failed, stopped, and running states. Assisted-by: opencode:enmaas/rits/zai-org/glm-5-3
vvaldez
force-pushed
the
postflight-role
branch
from
October 23, 2026 15:33
f9aeefa to
b6e08f3
Compare
3 tasks done
vvaldez
added a commit
to vvaldez/openshift_virtualization_migration
that referenced
this pull request
Oct 23, 2026
Pair symmetry with validate_migration (companion PR redhat-cop#108, post-only). Clean break: v2 is unreleased and nothing in-repo consumed the old names. Role dirs, playbooks (vmf_validate_environment.yml), variable prefixes, test targets, docs, and the changelog fragment all use the new name. Assisted-by: opencode:enmaas/rits/zai-org/glm-5-3
Drop the task-level tags (always/plan/validate/vms/list/agent/ip/ disks/poweroff/action) from validate_migration — no other role in the collection uses task tags, and all checks already run on every invocation regardless. Add the empty galaxy_tags key to meta/main.yml to match the existing roles' metadata shape. Assisted-by: opencode:enmaas/rits/zai-org/glm-5-3
The tag-convention commit removed the task-level tags, but the role's docs still advertised per-check tags and --tags debug runs — update the README, argument_specs, and task comments to describe the one-off CLI run (-e validate_migration_secure_logging=false) instead. Assisted-by: opencode:enmaas/rits/zai-org/glm-5-3
The task-level tags are removed; the regression test comment still described an 'isolated tagged run' summary path. Rename it to 'isolated partial run'. Assisted-by: opencode:enmaas/rits/zai-org/glm-5-3
- Report suspended sources correctly: a suspended VM is a valid lookup result (read-only mode reports its state instead of "lookup failed"), and an enabled power-off applies the same hard stop to a suspended source. - Dedup the gather blocks: the SOAP vmware_guest_info gather (3x) and the OpenShift Virtualization k8s query (3x) collapse into shared includes (gather_source_vm.yml, gather_target_k8s.yml) with one register per family; the module tier justification lives in the shared include. - Add regression tests: the 0/0 disk-lookup gate case (a failed lookup must never open the gate even with a 0-volume target), suspended read-only and suspended power-off paths; rename the duplicate "plan failed" subtest. - Fix the ADR cross-reference path in defaults (underscore to hyphen). Validated: pytest 64 passed + 32 subtests, integration ok=48/rescued=3 (unchanged), VMware contract guard, full pre-commit green. Assisted-by: opencode:publishers/prelude-maas/models/glm-53-flash
The local docsible venv was rebuilt without md-toc (pinned in requirements-ci.txt), so the TOC step silently no-opped and the committed README diverged from what CI regenerates. Regenerated with the complete environment. Assisted-by: opencode:publishers/prelude-maas/models/glm-53-flash
vvaldez
marked this pull request as ready for review
October 26, 2026 15:26
Issue redhat-cop#121 requires community-module use to document which module, why it is required over a command, and why the pin range is safe. The existing justification covered the first two; add the pin-range note: community.vmware is pinned >=5.5.0, every option in use predates the pin floor and is unchanged across 5.x. Also note the pyVmomi requirement. Assisted-by: opencode:publishers/prelude-maas/models/glm-53-flash
This was referenced Oct 26, 2026
This branch is waiting to be deployed
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
validate_migrationvalidates migration outcomes after vmf_migrate completes and performs the fail-closed source power-off. Every check runs in one invocation; the summary fails the play when any ran check failed.The preflight role rename to
validate_environmentlands in companion PR #110.Checks
VMware module decisions
vmware.vmware.vm_powerstate(>=1.11.0)community.vmware.vmware_guest_powerstateis tombstoned in community.vmware 7.0.0community.vmware.vmware_guest_infovmware.vmware.vm_infoinitializes a REST client even forschema: vsphere. Old vCenters and the demo emulator require SOAP-only gathering. Documented tier-3 exception.validate_migration_vcenter_datacenterrequired when power-off is enabledNOTE: SOAP transport is not a vCenter 6.x support claim. No version compatibility is asserted; verify per environment. See docs/research/validate-migration-vmware-powerstate.md.
Also included
playbooks/utility_v2v_nofstrim_shim.yml: field workaround for MTV 2.11/2.12 on pre-x86-64-v3 CPUs. The controller passes--no-fstrim; shipped rhel9 images predate the flag; rhel10 images SIGILL on those CPUs. The playbook builds a shim from the installed MTV's own rhel9 image, pushes it to the integrated registry, and pins ForkliftController. Tested end-to-end on pool1; the migration succeeded with it.scripts/check-validate-migration-vmware.py) wired into pre-commit, fail-closed on both VMware modules.Validation
Changelog
changelogs/fragments/108-validate-migration-role.ymlAttribution: created using opencode (session: ses_ed904e798ffeTYJVsSCQP9sbvM)