migrate
The full pipeline: inventory → resolve → translate → evaluate conditionals → emit an Ansible role plus a JSON attestation.
vrtmv migrate --image centos7.vmdk --target rocky9 -o out/
vrtmv migrate --root /mnt/vm --target rhel9 --preflight
| Flag | Purpose |
|---|---|
--root / --image / --ssh | The source (see Sources). |
--ssh-port, --ssh-key, --jump, --sudo | SSH collection options. |
--target <spec> | Target OS (default rocky9). See Supported targets. |
-o, --out <dir> | Output directory (default vrtmv-out). |
--format <list> | Output format(s): any of ansible, terraform (comma-separated; default ansible). |
--preflight | Report counts and blocking steps only; write no files and consume no usage credit. |
--engagement <id>, --vm-id <id>, --migration-type <t> | Tag the run as a VM migration record — see Tagging VM migrations. |
Output
A non-preflight run always writes vrtmv-attestation.json (the host-specific parity report). When the service has signing enabled it also writes vrtmv-attestation.sig.json, a Vrtmv-signed signature over that report (see Attestation → Signing). It then writes the runbook in each requested --format:
ansible(default) →roles/vrtmv_migration/tasks/main.yml— an Ansible role that installs the translated packages and reconciles config.terraform→terraform/cloud-init.yaml+terraform/main.tf— the translated workload packaged as cloud-init, wrapped in acloudinit_configwhose rendered output attaches to a compute resource asuser_data. This is the reusable foundation for the coming cloud targets (EC2 and friends); today it targets a VM you attach the cloud-init to.
Request both with --format ansible,terraform.
Preflight vs full run
--preflight is the feasibility check: it runs the same analysis, prints the translatable/unresolved/untranslated counts and the number of blocking manual steps, and stops. It writes nothing and is not billable. A full run records one depersonalized migration usage event; whether that event is billable depends on your plan and target (see Accounts, quota & billing).