Documentation Index
Fetch the complete documentation index at: https://docs.xloud.tech/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Thexms CLI is a command-line client for the Xloud Migration Suite. It
mirrors the Dashboard Migration panel: every action you can take in the UI
is available as a CLI command, and every object you can inspect in the UI is
available as a structured CLI response.
Use the CLI when you want to script multi-wave campaigns, run migrations
from CI, or integrate XMS with your own automation.
The CLI authenticates against the platform identity service with the same
credentials you use for the Xloud Dashboard. Project scope is resolved
from the authenticated token.
Global Options
These options apply to every subcommand.| Option | Description |
|---|---|
--os-cloud <name> | Select a named cloud from your clouds.yaml |
--os-auth-url <url> | Override the identity endpoint |
--os-project-name <name> | Set the project scope |
--os-project-domain-name <name> | Set the project domain |
--os-username <name> | Authenticated user |
--os-password <password> | Password (prefer --password-stdin or env vars) |
-f, --format <fmt> | Output format: table (default), json, yaml, csv |
-q, --quiet | Suppress non-essential output |
-v, --verbose | Show request and response detail |
--no-color | Disable ANSI colors in table output |
Sources
Manage registered migration source environments.xms source create
Register a new VMware source.| Flag | Description |
|---|---|
--name | Friendly source name, unique per project |
--platform | Source platform — vmware for vSphere |
--host | vCenter or ESXi hostname or IP |
--port | vSphere API port (default 443) |
--username | Source service account |
--password-stdin | Read password from stdin (preferred) |
--password | Inline password — discouraged, leaves secret in history |
--verify-ssl / --no-verify-ssl | TLS verification toggle |
--datacenter | Optional — pin discovery to a single datacenter |
xms source list
List registered sources.xms source show
Show a single source including status and detected vSphere version.xms source update
Update fields on an existing source. Only the flags you pass are applied.xms source test
Re-run the connection test without changing anything.xms source delete
Delete a source. Fails if any active job references it.Discovery
Inventory VMs and disks from a registered source.xms discovery start
Kick off a discovery scan.xms discovery status
Report the current scan state.--follow streams progress until the scan completes.
xms discovery list
List every discovered workload for a source.xms discovery show
Show the full discovery record for a single VM.Preflight
Run compatibility checks against discovered workloads.xms preflight run
Run preflight against one or more VMs.xms preflight show
Fetch the latest preflight verdict for a VM.xms preflight list
List preflight verdicts across a source.xms preflight enable-cbt
Enable Changed Block Tracking on a source VM through the vSphere API.Migrations
Submit, monitor, and manage migration jobs.xms migration submit
Submit a new migration job.| Flag | Description |
|---|---|
--source | Registered source name |
--vm | Source VM name |
--kind | cold or warm |
--target-project | Target Xloud project |
--target-name | Optional — instance name in the target project |
--flavor | Xloud flavor for the target instance |
--volume-type | Target volume type |
--availability-zone | Optional — pin the target to a zone |
--network-map | Source to target network mapping, can be repeated |
--preserve-mac | Attempt to preserve the source MAC on the target NIC |
--sync-cadence | Warm only — manual, 15m, 1h, 24h |
xms migration list
List migration jobs in the current project.xms migration show
Show the full state of a single migration job.xms migration events
Stream the event history for a job.xms migration sync
Trigger an immediate incremental sync on a warm migration that is in the Ready state.xms migration pause
Pause scheduled incrementals without losing progress. Only applies to warm migrations.xms migration resume
Resume a paused warm migration.xms migration cutover
Trigger cutover on a warm migration.xms migration cancel
Cancel a job. Releases any disk transport session and worker slot. Source and target state are left unchanged.Scripting Patterns
Wave Preflight and Submit
Run preflight on a wave file, then submit cold migrations for everything that passes:Watch a Running Campaign
Follow every job in the current project and print a live status table:Cutover After All Warm Jobs Reach Ready
Wait until every warm migration in a wave is Ready, then cut them all over in sequence:Exit Codes
The CLI exits with a non-zero code on failure so it can be used in shell pipelines and CI:| Exit Code | Meaning |
|---|---|
0 | Success |
1 | Generic error (bad flags, validation failure) |
2 | Authentication or authorization failure |
3 | Source or VM not found |
4 | Job failed or timed out while following |
5 | Network or transport error talking to XMS |
Next Steps
User Guide
End-to-end workflow using the Dashboard or CLI
Admin Guide
Operator setup, credentials, and capacity planning
Troubleshooting
Diagnose job failures and post-migration issues