=pod

=head1 NAME

virt-convert - convert ovf/vmx to native libvirt guests

=head1 SYNOPSIS

B<virt-convert> INPUT.vmx|INPUT.ovf|INPUT-DIR|INPUT.zip [OPTIONS]

=head1 DESCRIPTION

B<virt-convert> is a command line tool for converting VMX of OVF virtual
machines to native libvirt XML. Disk format conversion can also be done
at the same time.

The simplest invocation is simply: virt-convert INPUT. INPUT might be
a .vmx or .ovf file, a directory containing a .vmx or .ovf file (and
likely 1 or more disk images), or an appliance archive like .zip, .tar.gz,
or .ova. virt-convert will try to do the right thing in each case.

By default, the virt-convert will convert all encountered disk images
to 'raw' format, sending the output to a new directory location. So the
original disk images are _not_ altered in place.

=head1 OPTIONS

=over 4

=item -h, --help

Show the help message and exit

=item --version

Show program's version number and exit

=item  --connect=URI

Connect to a non-default hypervisor. See L<virt-install(1)> for details

=back

=head2 Conversion Options

=over 2

=item  -i/--input-format FORMAT

Input format. This should be auto-detected, but can be forced if necessary. Currently C<vmx> and C<ovf> are supported.

=item  -D/--disk-format DISK-FORMAT

Output disk format. The default is 'raw', so any encountered disk images will be converted to 'raw' format using L<qemu-img(1)>. Pass C<none> if no conversion should be performed: in this case the images will just be copied to the specified --destination.

=item --destination DIRECTORY

The directory to send converted/copied disk images. If not specified, the hypervisor default is used, typically /var/lib/libvirt/images.

=back

=head2 Miscellaneous Options

=over 2

=item  --noautoconsole

Don't automatically try to connect to the guest console. The default behaviour
is to launch L<virt-viewer(1)> to display the graphical console, or to run the
C<virsh> C<console> command to display the text console. Use of this parameter
will disable this behaviour.

=item --print-xml

Print the generated libvirt XML, but do not perform any disk conversions or
install/start the guest. This option implies --dry-run.

=item --dry-run

Proceed through the conversion process, but don't convert disks or actually
write any converted files.

=item -q, --quiet

Avoid verbose output.

=item -d, --debug

Print debugging information

=back

=head1 EXAMPLES

Run a fedora18 OVA archive:

  # virt-convert fedora18.ova

Run an extracted zip archive containing a centos6 .vmx and .vmdk file, converting the images to qcow2 format

  # virt-convert centos6/ --disk-format qcow2

Convert the specified .vmx file. Any references disk images must be in the same directory. Don't change the disk format. Move the disk images to /tmp

  # virt-convert foo.vmx --disk-format none --destination /tmp

=head1 BUGS

Please see http://virt-manager.org/page/BugReporting

=head1 COPYRIGHT

Copyright (C) Red Hat, Inc, and various contributors.
This is free software. You may redistribute copies of it under the terms
of the GNU General Public License C<http://www.gnu.org/licenses/gpl.html>.
There is NO WARRANTY, to the extent permitted by law.

=head1 SEE ALSO

L<virt-install(1)>, the project website C<http://virt-manager.org>

=cut

