Hello,

We are moving VMs from vmware to proxmox
The process follows:
- export the VM using ovftool
- import using qm importovf

We are facing an issue on multi-disk VM: all the disks are attached as scsi0 (which fails, and abort the process)

From /usr/share/perl5/PVE/CLI/qm.pm, that value came from PVE::QemuServer::OVF::parse_ovf

And from /usr/share/perl5/PVE/QemuServer/OVF.pm, that value came from rasd:AddressOnParent, from the OVF file

And indeed, in the OVF file:
      <Item>
        <rasd:AddressOnParent>0</rasd:AddressOnParent>
        <rasd:ElementName>Hard disk 1</rasd:ElementName>
        <rasd:HostResource>ovf:/disk/vmdisk1</rasd:HostResource>
        <rasd:InstanceID>11</rasd:InstanceID>
        <rasd:Parent>5</rasd:Parent>
        <rasd:ResourceType>17</rasd:ResourceType>
<vmw:Config ovf:required="false" vmw:key="backing.writeThrough" vmw:value="false"/>
      </Item>
      <Item>
        <rasd:AddressOnParent>0</rasd:AddressOnParent>
        <rasd:ElementName>Hard disk 2</rasd:ElementName>
        <rasd:HostResource>ovf:/disk/vmdisk2</rasd:HostResource>
        <rasd:InstanceID>12</rasd:InstanceID>
        <rasd:Parent>4</rasd:Parent>
        <rasd:ResourceType>17</rasd:ResourceType>
<vmw:Config ovf:required="false" vmw:key="backing.writeThrough" vmw:value="false"/>
      </Item>

-> both disk has the same AddressOnParent, 0, because they do not share the same Parent (respectively 5 and 4)

Parents are, according to the OVF's spec, "The InstanceID of the parent controller"

So now, what should we do ?
I wonder if we could simply increment that number for each disk found, in the loop: first disk gets scsi0, second gets scsi1 etc

Thanks

_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to