[Engine-devel] New tool to upload OVF archives

Shahar Havivi shaharh at redhat.com
Tue Dec 6 14:48:47 UTC 2011


Hi,
the ovf documentation can be found in this link
http://cleo.tlv.redhat.com/qumrawiki/CategoryRhevmBackend/OvfFileFormat


On 06.12.11 08:41, Keith Robertson wrote:
> On 12/06/2011 03:05 AM, Livnat Peer wrote:
> ><snip>
> >>>Is it covered by the tool?
> >>Livnat,
> >>Currently, the tool will only update the TemplateID and the 2 places
> >>where it appears.  It does not update the "ovf:diskID" attribute or the
> >>5 places where the "diskID" UUID can appear.
> >>
> >>The OVF XML schema is a bit vague on these issues so I had to make some
> >>assumptions.  Please correct my assumptions...
> >I think Shahar can help with this.
> >Shahar - can you publish the ovf docs on the oVirt wiki?
> >
> >
> >>1. The UUID in the TemplateID element appears to be different than the
> >>UUID for the "ovf:diskId" attribute.  I am assuming that this is a
> >>requirement.
> >yes
> >
> >>2. The UUID for the TemplateID uniquely identifies the "image" to be
> >>imported *not* the disk ID(s).  An image can have multiple disks and
> >>each disk would have it's own UUID.
> >>
> >I am not sure i follow you with this question.
> >IIUC the tool supports the ability to change template ID but not change
> >it's disks ids.
> Correct, this is the current behavior.
> >Then you have 2 different templates pointing to the same
> >disks?
> No, I don't think you would have two templates pointing to the same
> disk(s) unless the tool that generated the OVF archive and it's
> associated XML did it incorrectly.
> 
> To summarize, the OVF XML schema appears to create a parent-child
> relationship between the TemplateID and the disks.  See the
> abbreviated XML below from an actual OVF XML file below and notice
> the following points:
> 
> 1. The "Content" element appears to be the "parent" element.  It has
> a "Name" and a "TemplateID" which I think uniquely identify the
> "image" or "template".
> 2. The "Content" element has "Item"(s) as indirect children.  These
> "Item"s can be disks and are uniquely identified by their own UUID
> (i.e. InstanceID).
> 3. The "InstanceID" of a disk can be resolved to a physical disk by
> looking at the "id" and "href" combination in the "References"
> element.
> 
> In short, the relationship appears to be...
> 
> TemplateID (UUID-1)
> |- Disk (UUID-2)
> |- Disk (UUID-3)
> 
> Do you agree?
> 
> 
> //---------- Begin XML
> <?xml version='1.0' encoding='UTF-8'?>
> <ovf:Envelope ovf:version="3.0.0.0">
> <References>
> <File
> ovf:href="2b30e705-c1d6-4bd8-a6cd-a1fe8a70614f/c0e51e1b-004e-4d10-abc0-8b9f5e21f3ad"
>             ovf:id="c0e51e1b-004e-4d10-abc0-8b9f5e21f3ad"
> ovf:size="8589934592"/>
> </References>
> <Section xsi:type="ovf:DiskSection_Type">
> <Info>List of Virtual Disks</Info>
> <Disk ovf:diskId="c0e51e1b-004e-4d10-abc0-8b9f5e21f3ad" ovf:size="8"
>             ovf:actual_size="1"
> ovf:vm_snapshot_id="c1398a3c-ca59-460a-ac0c-0ea91d7218be"
> ovf:fileRef="2b30e705-c1d6-4bd8-a6cd-a1fe8a70614f/c0e51e1b-004e-4d10-abc0-8b9f5e21f3ad"
> ovf:format="http://www.gnome.org/~markmc/qcow-image-format.html"
>             ovf:volume-format="COW" ovf:volume-type="Sparse"
> ovf:disk-interface="VirtIO"
>             ovf:disk-type="System" ovf:boot="true"
> ovf:wipe-after-delete="false" />
> </Section>
> <Content ovf:id="out" xsi:type="ovf:VirtualSystem_Type">
> <Name>tmcowrhel6</Name>
> <TemplateId>5272b689-cd9f-4532-9b5d-2413eb7b9402</TemplateId>
> <Section ovf:id="5272b689-cd9f-4532-9b5d-2413eb7b9402"
>             ovf:required="false"
> xsi:type="ovf:OperatingSystemSection_Type">
> <Info>Guest Operating System</Info>
> <Description>RHEL6x64</Description>
> </Section>
> <Section xsi:type="ovf:VirtualHardwareSection_Type">
> <Info>1 CPU, 1024 Memeory</Info>
> <System>
> <vssd:VirtualSystemType>RHEVM 3.0.0.0</vssd:VirtualSystemType>
> </System>
> <Item>
> <rasd:Caption>Drive 1</rasd:Caption>
> <rasd:InstanceId>c0e51e1b-004e-4d10-abc0-8b9f5e21f3ad
> </rasd:InstanceId>
> <rasd:ResourceType>17</rasd:ResourceType>
> <rasd:HostResource>2b30e705-c1d6-4bd8-a6cd-a1fe8a70614f/c0e51e1b-004e-4d10-abc0-8b9f5e21f3ad
> </rasd:HostResource>
> </Item>
> </Section>
> </Content>
> </ovf:Envelope>
> 
> 
> 
> >Livnat
> >
> >
> The point is that the TemplatID [1] can have multiple child disks
> and each ch
> 
> _______________________________________________
> Engine-devel mailing list
> Engine-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/engine-devel



More information about the Devel mailing list