Bug 1607129

Summary: Remove info about "rhv-upload cannot use -oa preallocated" in virt-v2v man page
Product: Red Hat Enterprise Linux 7 Reporter: mxie <mxie>
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.6CC: juzhou, mzhan, ptoscano, tzheng, xiaodwan
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: V2V
Fixed In Version: libguestfs-1.38.2-9.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-30 07:47:00 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description mxie@redhat.com 2018-07-22 09:00:47 UTC
Description of problem:
Remove info about "rhv-upload cannot use -oa preallocated" in virt-v2v man page

Version-Release number of selected component (if applicable):
virt-v2v-1.38.2-8.el7.x86_64
libguestfs-1.38.2-8.el7.x86_64


How reproducible:
100%

Steps to Reproduce:
1.Check related rhv-upload info in v2v man page
#man virt-v2v
....
OUTPUT TO RHV
....
-of raw
    Currently you must use -of raw and you cannot use -oa preallocated.
....

2.According to v2v man page, rhv-upload cannot use -oa preallocated but v2v must set -oa preallocated when v2v convert guest to rhv iscsi/fc data storage during rhv-upload conversion, pls refer to https://bugzilla.redhat.com/show_bug.cgi?id=1600547#c2

# virt-v2v -i ova esx6.7-rhel7.5-x86_64 -o rhv-upload -oc https://hp-dl360eg8-03.lab.eng.pek2.redhat.com/ovirt-engine/api -os fc_data -op /tmp/rhvpasswd -oo rhv-cafile=/root/ca.pem -of raw --password-file /tmp/passwd -b ovirtmgmt -oa preallocated -oo rhv-cluster=FC
[   0.4] Opening the source -i ova esx6.7-rhel7.5-x86_64
virt-v2v: warning: making OVA directory public readable to work around 
libvirt bug https://bugzilla.redhat.com/1045069
[  27.1] Creating an overlay to protect the source from being modified
[  27.6] Initializing the target -o rhv-upload -oa preallocated -oc https://hp-dl360eg8-03.lab.eng.pek2.redhat.com/ovirt-engine/api -op /tmp/rhvpasswd -os fc_data
[  29.7] Opening the overlay
[  36.8] Inspecting the overlay
[ 119.6] Checking for sufficient free disk space in the guest
[ 119.6] Estimating space required on target for each disk
[ 119.6] Converting Red Hat Enterprise Linux Server 7.5 (Maipo) to run on KVM
virt-v2v: This guest has virtio drivers installed.
[ 366.6] Mapping filesystem data to avoid copying unused and blank areas
[ 368.1] Closing the overlay
[ 371.4] Checking if the guest needs BIOS or UEFI to boot
[ 371.4] Assigning disks to buses
[ 371.4] Copying disk 1/1 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.Iddu5X/nbdkit0.sock", "file.export": "/" } (raw)
    (100.00/100%)
[2282.2] Creating output metadata
[2306.7] Finishing off


Actual results:
As above description

Expected results:
Remove info about "rhv-upload cannot use -oa preallocated" in virt-v2v man page

Additional info:

Comment 3 mxie@redhat.com 2018-07-25 11:19:05 UTC
Verify the bug with builds:
virt-v2v-1.38.2-9.el7.x86_64
libguestfs-1.38.2-9.el7.x86_64

Steps:
1.Check related rhv-upload info in v2v man page
#man virt-v2v
....
OUTPUT TO RHV
       This new method to upload guests to oVirt or RHV directly via the REST
       API requires oVirt/RHV ≥ 4.2.

       You need to specify -o rhv-upload as well as the following extra
       parameters:

       -oc "https://ovirt-engine.example.com/ovirt-engine/api"
           The URL of the REST API which is usually the server name with
           "/ovirt-engine/api" appended, but might be different if you
           installed oVirt Engine on a different path.

....
       -oo rhv-verifypeer
           Verify the oVirt/RHV server’s identity by checking the server‘s
           certificate against the Certificate Authority.


Result:
    Below info has been removed
....
   -of raw
    Currently you must use -of raw and you cannot use -oa preallocated.
....


2.Convert a guest with setting -of qcow2 to rhv4.2 using rhv-upload by virt-v2v, there is clear error to show that rhv-upload must use ‘-of raw’ currently

# virt-v2v -ic vpx://vsphere.local%5cAdministrator.73.141/data/10.73.75.219/?no_verify=1  esx6.7-rhel7.5-x86_64 -o rhv-upload -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -os nfs_data -op /tmp/rhvpasswd -oo rhv-cafile=/home/ca.pem  -oo rhv-direct=true --password-file /tmp/passwd -of qcow2 -oa preallocated
[   0.2] Opening the source -i libvirt -ic vpx://vsphere.local%5cAdministrator.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.5-x86_64
[   1.9] Creating an overlay to protect the source from being modified
[   2.6] Initializing the target -o rhv-upload -oa preallocated -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /tmp/rhvpasswd -os nfs_data
virt-v2v: error: rhv-upload: currently you must use ‘-of raw’.  This 
restriction will be loosened in a future version.

If reporting bugs, run virt-v2v with debugging enabled and include the 
complete output:

  virt-v2v -v -x [...]


3.Convert a guest without setting disk format to rhv4.2 using rhv-upload by virt-v2v,the conversion could be finished without error and guest's disk format is raw 

# virt-v2v -ic vpx://vsphere.local%5cAdministrator.73.141/data/10.73.75.219/?no_verify=1  esx6.7-rhel7.5-x86_64 -o rhv-upload -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -os nfs_data -op /tmp/rhvpasswd -oo rhv-cafile=/home/ca.pem  -oo rhv-direct=true --password-file /tmp/passwd -oa preallocated
[   0.2] Opening the source -i libvirt -ic vpx://vsphere.local%5cAdministrator.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.5-x86_64
[   2.0] Creating an overlay to protect the source from being modified
[   2.6] Initializing the target -o rhv-upload -oa preallocated -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /tmp/rhvpasswd -os nfs_data
[   3.8] Opening the overlay
[  21.2] Inspecting the overlay
[ 160.7] Checking for sufficient free disk space in the guest
[ 160.7] Estimating space required on target for each disk
[ 160.7] Converting Red Hat Enterprise Linux Server 7.5 (Maipo) to run on KVM
virt-v2v: This guest has virtio drivers installed.
[1264.0] Mapping filesystem data to avoid copying unused and blank areas
[1265.6] Closing the overlay
[1265.8] Checking if the guest needs BIOS or UEFI to boot
[1265.8] Assigning disks to buses
[1265.8] Copying disk 1/1 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.WQv2nI/nbdkit1.sock", "file.export": "/" } (raw)
    (100.00/100%)
[2204.0] Creating output metadata
[2227.5] Finishing off

4.Check converted guest's disk format on rhv node (registered host)
4.1 # virsh dumpxml esx6.7-rhel7.5-x86_64
....
<source file='/rhev/data-center/mnt/10.66.144.40:_home_nfs__data/484255cb-cf10-4d22-ba81-32fdb29f0d21/images/28b904a2-359b-4549-8ada-e45084834960/94874e7a-0487-46e5-b605-e5cf98273048'/>
...

4.2# qemu-img info 28b904a2-359b-4549-8ada-e45084834960/94874e7a-0487-46e5-b605-e5cf98273048
image: 28b904a2-359b-4549-8ada-e45084834960/94874e7a-0487-46e5-b605-e5cf98273048
file format: raw
virtual size: 12G (12884901888 bytes)
disk size: 12G


Result:
   Virt-v2v man page has removed info about "rhv-upload must use -of raw and you cannot use -oa preallocated", v2v also can give a clear error during rhv-upload conversion with ‘-of qcow2’, so move the bug from ON_QA to VERIFIED

Comment 5 errata-xmlrpc 2018-10-30 07:47:00 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2018:3021