mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
snapshot: add <disks> to snapshot xml
Adds an optional element to <domainsnapshot>, which will be used
to give user control over external snapshot filenames on input,
and specify generated filenames on output.
For now, no driver accepts this element; that will come later.
<domainsnapshot>
...
<disks>
<disk name='vda' snapshot='no'/>
<disk name='vdb' snapshot='internal'/>
<disk name='vdc' snapshot='external'>
<driver type='qcow2'/>
<source file='/path/to/new'/>
</disk>
</disks>
<domain>
...
<devices>
<disk ...>
<driver name='qemu' type='raw'/>
<target dev='vdc'/>
<source file='/path/to/old'/>
</disk>
</devices>
</domain>
</domainsnapshot>
* src/conf/domain_conf.h (_virDomainSnapshotDiskDef): New type.
(_virDomainSnapshotDef): Add new elements.
(virDomainSnapshotAlignDisks): New prototype.
* src/conf/domain_conf.c (virDomainSnapshotDiskDefClear)
(virDomainSnapshotDiskDefParseXML, disksorter)
(virDomainSnapshotAlignDisks): New functions.
(virDomainSnapshotDefParseString): Parse new fields.
(virDomainSnapshotDefFree): Clean them up.
(virDomainSnapshotDefFormat): Output them.
* src/libvirt_private.syms (domain_conf.h): Export new function.
* docs/schemas/domainsnapshot.rng (domainsnapshot, disksnapshot):
Add more xml.
* docs/formatsnapshot.html.in: Document it.
* tests/domainsnapshotxml2xmlin/disk_snapshot.xml: New test.
* tests/domainsnapshotxml2xmlout/disk_snapshot.xml: Update.
This commit is contained in:
@@ -6,6 +6,23 @@
|
||||
</parent>
|
||||
<state>disk-snapshot</state>
|
||||
<creationTime>1272917631</creationTime>
|
||||
<disks>
|
||||
<disk name='hda' snapshot='no'/>
|
||||
<disk name='hdb' snapshot='no'/>
|
||||
<disk name='hdc' snapshot='internal'/>
|
||||
<disk name='hdd' snapshot='external'>
|
||||
<driver type='qed'/>
|
||||
<source file='/path/to/generated4'/>
|
||||
</disk>
|
||||
<disk name='hde' snapshot='external'>
|
||||
<driver type='qcow2'/>
|
||||
<source file='/path/to/new'/>
|
||||
</disk>
|
||||
<disk name='hdf' snapshot='external'>
|
||||
<driver type='qcow2'/>
|
||||
<source file='/path/to/generated5'/>
|
||||
</disk>
|
||||
</disks>
|
||||
<domain type='qemu'>
|
||||
<name>QEMUGuest1</name>
|
||||
<uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid>
|
||||
@@ -27,6 +44,31 @@
|
||||
<target dev='hda' bus='ide'/>
|
||||
<address type='drive' controller='0' bus='0' unit='0'/>
|
||||
</disk>
|
||||
<disk type='block' device='disk'>
|
||||
<source dev='/dev/HostVG/QEMUGuest2'/>
|
||||
<target dev='hdb' bus='ide'/>
|
||||
<address type='drive' controller='0' bus='1' unit='0'/>
|
||||
</disk>
|
||||
<disk type='block' device='disk'>
|
||||
<source dev='/dev/HostVG/QEMUGuest3'/>
|
||||
<target dev='hdc' bus='ide'/>
|
||||
<address type='drive' controller='0' bus='2' unit='0'/>
|
||||
</disk>
|
||||
<disk type='block' device='disk'>
|
||||
<source dev='/dev/HostVG/QEMUGuest4'/>
|
||||
<target dev='hdd' bus='ide'/>
|
||||
<address type='drive' controller='0' bus='3' unit='0'/>
|
||||
</disk>
|
||||
<disk type='block' device='disk'>
|
||||
<source dev='/dev/HostVG/QEMUGuest5'/>
|
||||
<target dev='hde' bus='ide'/>
|
||||
<address type='drive' controller='0' bus='4' unit='0'/>
|
||||
</disk>
|
||||
<disk type='block' device='disk'>
|
||||
<source dev='/dev/HostVG/QEMUGuest6'/>
|
||||
<target dev='hdf' bus='ide'/>
|
||||
<address type='drive' controller='0' bus='5' unit='0'/>
|
||||
</disk>
|
||||
<controller type='ide' index='0'/>
|
||||
<memballoon model='virtio'/>
|
||||
</devices>
|
||||
|
||||
Reference in New Issue
Block a user