1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2024-12-23 21:34:54 +03:00
libvirt/tests
Peter Krempa 43b99fc4c0 conf: Add post XML parse callbacks and prepare for cleaning of virCaps
This patch adds instrumentation that will allow hypervisor drivers to
fill and validate domain and device definitions after parsed by the XML
parser.

With this patch, after the XML is parsed, a callback to the driver is
issued requesting to fill and validate driver specific details of the
configuration. This allows to use sensible defaults and checks on a per
driver basis at the time the XML is parsed.

Two callback pointers are stored in the new virDomainXMLConf object:
* virDomainDeviceDefPostParseCallback (devicesPostParseCallback)
  - called for a single device parsed and for every single device in a
    domain config. A virDomainDeviceDefPtr is passed along with the
    domain definition and virCaps.

* virDomainDefPostParseCallback, (domainPostParseCallback)
  - A callback that is meant to process the domain config after it's
  parsed.  A virDomainDefPtr is passed along with virCaps.

Both types of callbacks support arbitrary opaque data passed for the
callback functions.

Errors may be reported in those callbacks resulting in a XML parsing
failure.
2013-04-04 22:29:48 +02:00
..
capabilityschemadata capabilities: add NUMA memory information 2013-03-08 11:51:00 -07:00
commanddata tests: reserve more fds for commandtest 2013-02-05 10:47:00 -07:00
confdata Change the default of mdns_adv to false 2012-03-27 09:54:49 -06:00
cputestdata Removed more AMD-specific features from cpu64-rhel* models 2012-03-09 14:36:31 +01:00
domainschemadata parallels: implement containers creation 2012-09-13 21:19:58 +08:00
domainsnapshotxml2xmlin snapshot: new XML for external system checkpoint 2012-11-02 09:56:23 -06:00
domainsnapshotxml2xmlout snapshot: new XML for external system checkpoint 2012-11-02 09:56:23 -06:00
interfaceschemadata Update interface.rng and xml test files to match netcf 0.1.5 2010-01-19 21:13:03 +01:00
lxcxml2xmldata Add support for <hostdev mode="capabilities"> 2012-12-17 17:50:50 +00:00
networkxml2confdata Revert "Add support for <option> tag in network config" 2013-02-27 10:55:24 -05:00
networkxml2xmlin Revert "Add support for <option> tag in network config" 2013-02-27 10:55:24 -05:00
networkxml2xmlout util: Change virMacAddrFormat to lowercase hex characters 2013-04-02 15:53:43 +02:00
nodedevschemadata Update xml schemas according to libvirt source 2012-08-02 14:36:23 -06:00
nodeinfodata nodeinfotest: Add test data from a AMD bulldozer machine. 2012-11-13 00:35:36 +01:00
nwfilterxml2xmlin nwfilter: Add support for ipset 2012-05-21 06:26:34 -04:00
nwfilterxml2xmlout nwfilter: Add support for ipset 2012-05-21 06:26:34 -04:00
qemuhelpdata Revert "qemu: detect multi-head qxl via more than version check" 2013-03-25 08:38:35 -06:00
qemuxml2argvdata smartcard: spell ccid-card-emulated qemu property correctly 2013-04-02 06:23:33 -06:00
qemuxml2xmloutdata Remove probing of CPU models when launching QEMU guests 2012-09-27 10:24:52 +01:00
qemuxmlnsdata qemu: pass -usb and usb hubs earlier, so USB disks with static address are handled properly 2012-10-30 08:54:32 +01:00
securityselinuxlabeldata Add a test suite for validating SELinux labelling 2013-01-14 13:40:04 +00:00
sexpr2xmldata storage: treat 'aio' like 'raw' at parse time 2012-10-19 17:35:09 -06:00
storagepoolxml2xmlin Update xml schemas according to libvirt source 2012-08-02 14:36:23 -06:00
storagepoolxml2xmlout Update xml schemas according to libvirt source 2012-08-02 14:36:23 -06:00
storagevolxml2argvdata storage: move qemu-img options before positional arguments 2013-02-24 18:11:40 +01:00
storagevolxml2xmlin Added timestamps to storage volumes 2012-08-02 17:14:17 -06:00
storagevolxml2xmlout Add a sheepdog backend for the storage driver 2012-07-18 20:08:27 +01:00
sysinfodata Implement minimal sysinfo for ARM platforms 2013-04-04 11:07:31 +01:00
vmx2xmldata vmx: handle shared folders parsing 2012-07-21 20:15:02 +02:00
xencapsdata Add suspend info to Xen, LXC and UML hypervisor capabilities 2011-11-30 10:12:30 +00:00
xmconfigdata numad: Always output 'placement' of <vcpu> 2012-05-08 16:57:37 -06:00
xml2sexprdata Xen: Fix <clock> handling 2012-04-02 09:33:54 -06:00
xml2vmxdata util: Change virMacAddrFormat to lowercase hex characters 2013-04-02 15:53:43 +02:00
.valgrind.supp valgrind: Adjust the suppression file 2013-02-07 14:08:14 -05:00
capabilityschematest Make test suite output less verbose 2010-01-15 16:28:05 +00:00
commandhelper.c tests: uniformly report test failures 2013-02-25 17:38:11 -07:00
commandtest.c commandtest: Resolve some coverity resource leaks 2013-02-16 07:44:35 -05:00
cpuset use virBitmap to store cpumask info. 2012-09-17 14:59:37 -04:00
cputest.c Rename xml.{c,h} to virxml.{c,h} 2012-12-21 11:19:50 +00:00
define-dev-segfault numad: Always output 'placement' of <vcpu> 2012-05-08 16:57:37 -06:00
domainschematest Add LXC XML files to schema test & fix problems this uncovers 2012-03-27 15:52:25 +01:00
domainsnapshotschematest Domain snapshot RNG and tests. 2010-05-20 13:50:03 -04:00
domainsnapshotxml2xmltest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
esxutilstest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
eventtest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
int-overflow tests: Don't use bash if we don't have to 2011-07-29 17:17:21 +02:00
interfaceschematest Make test suite output less verbose 2010-01-15 16:28:05 +00:00
interfacexml2xmltest.c Cleanup for a return statement in source files 2012-03-26 14:45:22 -06:00
jsontest.c Rename json.{c,h} to virjson.{c,h} 2012-12-21 11:17:13 +00:00
libvirtd-fail Fix up "make check" 2009-10-07 12:18:13 +02:00
libvirtd-pool Fix up "make check" 2009-10-07 12:18:13 +02:00
libvirtdconftest.c Convert HAVE_SASL to WITH_SASL 2013-01-11 11:03:23 +00:00
lxcxml2xmltest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
Makefile.am rename tests/conftest.c 2013-03-19 13:13:28 -06:00
networkschematest Make test suite output less verbose 2010-01-15 16:28:05 +00:00
networkxml2conftest.c Enforce return check on virAsprintf() calls 2013-01-30 14:42:22 -07:00
networkxml2xmltest.c use client id for IPv6 DHCP host definition 2013-02-25 02:49:06 -05:00
nodedevschematest Make test suite output less verbose 2010-01-15 16:28:05 +00:00
nodedevxml2xmltest.c Cleanup for a return statement in source files 2012-03-26 14:45:22 -06:00
nodeinfotest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
nwfilterschematest nwfilter: Add filter schema for nwfilter XML, extend domain XML schema 2010-04-06 11:09:46 -04:00
nwfilterxml2xmltest.c Rename xml.{c,h} to virxml.{c,h} 2012-12-21 11:19:50 +00:00
object-locking.ml maint: fix up copyright notice inconsistencies 2012-09-20 16:30:55 -06:00
oomtrace.pl Remove tabs from all perl files & enforce this 2012-07-30 13:09:57 +01:00
openvzutilstest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
openvzutilstest.conf openvz: Add simple test for openvzReadNetworkConf 2011-06-01 11:58:15 +02:00
pkix_asn1_tab.c Add a test case for certificate validation 2011-07-22 15:18:32 +01:00
qemuargv2xmltest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
qemuhelptest.c Optimize machine option to set more options with it 2013-04-02 07:02:34 -06:00
qemumonitorjsontest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
qemumonitortest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
qemumonitortestutils.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
qemumonitortestutils.h maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
qemuxml2argvtest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
qemuxml2xmltest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
qemuxmlnstest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
read-bufsiz maint: avoid regression on copyright listings 2012-07-27 07:42:34 -06:00
read-non-seekable maint: avoid regression on copyright listings 2012-07-27 07:42:34 -06:00
reconnect.c Rename command.{c,h} to vircommand.{c,h} 2012-12-21 11:17:13 +00:00
schematestutils.sh tests: fix schema checks sorting 2011-12-22 13:01:09 -07:00
seclabeltest.c tests: uniformly report test failures 2013-02-25 17:38:11 -07:00
securityselinuxhelper.c securityselinuxhelper.c: Don't try to include xattr.h if not available 2013-01-14 21:00:51 +01:00
securityselinuxlabeltest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
securityselinuxtest.c Fix parsing of SELinux ranges without a category 2013-03-14 12:42:21 +00:00
sexpr2xmltest.c Turn virCapabilities into a virObject 2013-02-08 11:34:26 +00:00
shunloadhelper.c maint: fix up copyright notice inconsistencies 2012-09-20 16:30:55 -06:00
shunloadtest.c maint: fix up copyright notice inconsistencies 2012-09-20 16:30:55 -06:00
sockettest.c Rename memory.{c,h} to viralloc.{c,h} 2012-12-21 11:17:14 +00:00
ssh.c maint: fix up copyright notice inconsistencies 2012-09-20 16:30:55 -06:00
start maint: avoid regression on copyright listings 2012-07-27 07:42:34 -06:00
statstest.c Rename stats_linux.{c,h} to virstatslinux.{c,h} 2012-12-21 11:19:48 +00:00
storagebackendsheepdogtest.c maint: fix up copyright notice inconsistencies 2012-09-20 16:30:55 -06:00
storagepoolschematest Make test suite output less verbose 2010-01-15 16:28:05 +00:00
storagepoolxml2xmltest.c Add a sheepdog backend for the storage driver 2012-07-18 20:08:27 +01:00
storagevolschematest Make test suite output less verbose 2010-01-15 16:28:05 +00:00
storagevolxml2argvtest.c tests: fix leaks in storagevolxml2argvtest 2013-02-27 10:11:52 +01:00
storagevolxml2xmltest.c Remove spurious whitespace between function name & open brackets 2012-11-02 13:36:49 +00:00
sysinfotest.c Implement minimal sysinfo for ARM platforms 2013-04-04 11:07:31 +01:00
test_conf.c rename tests/conftest.c 2013-03-19 13:13:28 -06:00
test_conf.sh rename tests/conftest.c 2013-03-19 13:13:28 -06:00
test-lib.sh tests: simplify formatting 2011-07-11 09:21:37 -06:00
testutils.c viralloc: Export virAllocTest* 2013-03-22 12:45:14 +01:00
testutils.h tests: uniformly report test failures 2013-02-25 17:38:11 -07:00
testutilslxc.c Turn virCapabilities into a virObject 2013-02-08 11:34:26 +00:00
testutilslxc.h Add support for setting init argv for LXC 2012-03-27 15:52:25 +01:00
testutilsqemu.c qemu: add dtb option support 2013-03-19 15:48:58 -06:00
testutilsqemu.h maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
testutilsxen.c conf: Add post XML parse callbacks and prepare for cleaning of virCaps 2013-04-04 22:29:48 +02:00
testutilsxen.h maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
utiltest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
vcpupin maint: avoid regression on copyright listings 2012-07-27 07:42:34 -06:00
viratomictest.c Rename threads.{c,h} to virthread.{c,h} 2012-12-21 11:19:49 +00:00
virauthconfigtest.c Rename virterror.c virterror_internal.h to virerror.{c,h} 2012-12-21 11:19:50 +00:00
virbitmaptest.c bitmap: add way to find next clear bit 2013-02-05 16:23:14 -07:00
virbuftest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
virdrivermoduletest.c drivermodule: Ignore coverity warning about leaked_storage 2013-02-16 07:44:34 -05:00
virendiantest.c util: add virendian.h macros 2013-02-12 09:00:15 -07:00
virhashdata.h Rename hash.h and hash.c to virhash.h and virhash.c 2012-01-26 14:11:13 +00:00
virhashtest.c Rename util.{c,h} to virutil.{c,h} 2012-12-21 11:19:49 +00:00
viridentitytest.c Define internal APIs for managing identities 2013-03-19 13:37:37 +00:00
virkeyfiletest.c Rename virterror.c virterror_internal.h to virerror.{c,h} 2012-12-21 11:19:50 +00:00
virlockspacetest.c Check return on mkdir for LOCKSPACE_DIR 2013-01-04 10:57:09 -07:00
virnetmessagetest.c Rename virterror.c virterror_internal.h to virerror.{c,h} 2012-12-21 11:19:50 +00:00
virnetsockettest.c virnetsockettest: Need to initialize 'path' 2013-01-22 17:29:25 +01:00
virnettlscontexttest.c Fix TLS tests with gnutls 3 2013-03-04 17:42:16 +00:00
virportallocatortest.c build: fix build on BSD 2013-01-17 16:39:10 -07:00
virsh-all Don't check the 'connect' command in virsh-all test 2012-08-07 11:59:08 +01:00
virsh-optparse virsh: add snapshot-create-as memspec support 2012-11-07 09:04:18 -07:00
virsh-schedinfo Allow multiple parameters for schedinfo 2013-04-03 08:49:30 +02:00
virsh-synopsis maint: avoid regression on copyright listings 2012-07-27 07:42:34 -06:00
virsh-undefine build: avoid confusing make with raw name 'undefine' 2012-09-12 11:27:22 -06:00
virshtest.c Rename xml.{c,h} to virxml.{c,h} 2012-12-21 11:19:50 +00:00
virstoragetest.c tests: skip virstoragetest on RHEL 5 2013-02-26 12:53:36 -07:00
virstringtest.c Rename virterror.c virterror_internal.h to virerror.{c,h} 2012-12-21 11:19:50 +00:00
virt-aa-helper-test add vnc unix sockets to apparmor policy 2012-12-11 14:32:39 -07:00
virtimetest.c Rename virterror.c virterror_internal.h to virerror.{c,h} 2012-12-21 11:19:50 +00:00
viruritest.c Rename virterror.c virterror_internal.h to virerror.{c,h} 2012-12-21 11:19:50 +00:00
vmx2xmltest.c Turn virCapabilities into a virObject 2013-02-08 11:34:26 +00:00
xencapstest.c Turn virCapabilities into a virObject 2013-02-08 11:34:26 +00:00
xmconfigtest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
xml2sexprtest.c maint: Rename xmlconf to xmlopt and virDomainXMLConfig to virDomainXMLOption 2013-04-04 22:18:56 +02:00
xml2vmxtest.c conf: Add post XML parse callbacks and prepare for cleaning of virCaps 2013-04-04 22:29:48 +02:00