mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
ESX add esxDomainDefineXML()
A given domain XML gets converted to a VMX config, uploaded to the host and registered as new virtual machine. * src/esx/esx_driver.c: refactor datastore related path parsing into esxUtil_ParseDatastoreRelatedPath() * src/esx/esx_util.[ch]: add esxUtil_ParseDatastoreRelatedPath() * src/esx/esx_vi.[ch]: add esxVI_Context_UploadFile(), add datastores to the traversal in esxVI_BuildFullTraversalSpecList(), add esxVI_LookupDatastoreByName() * src/esx/esx_vi_methods.[ch]: add esxVI_RegisterVM_Task() * src/esx/esx_vi_types.c: make some error message more verbose * src/esx/esx_vmx.[ch]: add esxVMX_AbsolutePathToDatastoreRelatedPath() to convert a path into a datastore related path, add esxVMX_ParseFileName() to convert from VMX path format to domain XML path format, extend the other parsing function to be datastore aware, add esxVMX_FormatFileName() to convert from domain XML path format to VMX path format, fix VMX ethernet entry formating * tests/esxutilstest.c: add test for esxUtil_ParseDatastoreRelatedPath() * tests/vmx2xmldata/*: update domain XML files to use datastore related paths * tests/xml2vmxdata/*: update domain XML files to use datastore related paths, update VMX files to use absolute paths
This commit is contained in:
committed by
Daniel Veillard
parent
c3aa1f8bdb
commit
49faa15e4f
@@ -9,15 +9,21 @@
|
||||
#include "internal.h"
|
||||
#include "memory.h"
|
||||
#include "testutils.h"
|
||||
#include "esx/esx_util.h"
|
||||
#include "esx/esx_vmx.h"
|
||||
|
||||
static char *progname;
|
||||
|
||||
struct testInfo {
|
||||
const char *input;
|
||||
const char *output;
|
||||
esxVI_APIVersion version;
|
||||
};
|
||||
|
||||
|
||||
static void
|
||||
testQuietError(void *userData ATTRIBUTE_UNUSED,
|
||||
virErrorPtr error ATTRIBUTE_UNUSED)
|
||||
{
|
||||
/* nothing */
|
||||
}
|
||||
|
||||
|
||||
|
||||
static const char* names[] = {
|
||||
"sda", "sdb", "sdc", "sdd", "sde", "sdf", "sdg", "sdh", "sdi", "sdj", "sdk", "sdl", "sdm", "sdn", "sdo", "sdp", "sdq", "sdr", "sds", "sdt", "sdu", "sdv", "sdw", "sdx", "sdy", "sdz",
|
||||
@@ -62,6 +68,80 @@ testIndexToDiskName(const void *data ATTRIBUTE_UNUSED)
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
struct testPath {
|
||||
const char *datastoreRelatedPath;
|
||||
int result;
|
||||
const char *datastoreName;
|
||||
const char *directoryName;
|
||||
const char *fileName;
|
||||
};
|
||||
|
||||
static struct testPath paths[] = {
|
||||
{ "[datastore] directory/file", 0, "datastore", "directory", "file" },
|
||||
{ "[datastore] file", 0, "datastore", NULL, "file" },
|
||||
{ "[] directory/file", -1, NULL, NULL, NULL },
|
||||
{ "[datastore] directory/", -1, NULL, NULL, NULL },
|
||||
{ "directory/file", -1, NULL, NULL, NULL },
|
||||
};
|
||||
|
||||
static int
|
||||
testParseDatastoreRelatedPath(const void *data ATTRIBUTE_UNUSED)
|
||||
{
|
||||
int i, result = 0;
|
||||
char *datastoreName = NULL;
|
||||
char *directoryName = NULL;
|
||||
char *fileName = NULL;
|
||||
|
||||
for (i = 0; i < ARRAY_CARDINALITY(paths); ++i) {
|
||||
VIR_FREE(datastoreName);
|
||||
VIR_FREE(directoryName);
|
||||
VIR_FREE(fileName);
|
||||
|
||||
if (esxUtil_ParseDatastoreRelatedPath(NULL,
|
||||
paths[i].datastoreRelatedPath,
|
||||
&datastoreName, &directoryName,
|
||||
&fileName) != paths[i].result) {
|
||||
goto failure;
|
||||
}
|
||||
|
||||
if (paths[i].result < 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (STRNEQ(paths[i].datastoreName, datastoreName)) {
|
||||
virtTestDifference(stderr, paths[i].datastoreName, datastoreName);
|
||||
goto failure;
|
||||
}
|
||||
|
||||
if (paths[i].directoryName != NULL &&
|
||||
STRNEQ(paths[i].directoryName, directoryName)) {
|
||||
virtTestDifference(stderr, paths[i].directoryName, directoryName);
|
||||
goto failure;
|
||||
}
|
||||
|
||||
if (STRNEQ(paths[i].fileName, fileName)) {
|
||||
virtTestDifference(stderr, paths[i].fileName, fileName);
|
||||
goto failure;
|
||||
}
|
||||
}
|
||||
|
||||
cleanup:
|
||||
VIR_FREE(datastoreName);
|
||||
VIR_FREE(directoryName);
|
||||
VIR_FREE(fileName);
|
||||
|
||||
return result;
|
||||
|
||||
failure:
|
||||
result = -1;
|
||||
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
|
||||
static int
|
||||
mymain(int argc, char **argv)
|
||||
{
|
||||
@@ -79,10 +159,18 @@ mymain(int argc, char **argv)
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
if (virtTestRun("VMware IndexToDiskName", 1, testIndexToDiskName,
|
||||
NULL) < 0) {
|
||||
result = -1;
|
||||
}
|
||||
virSetErrorFunc(NULL, testQuietError);
|
||||
|
||||
#define DO_TEST(_name) \
|
||||
do { \
|
||||
if (virtTestRun("VMware "#_name, 1, test##_name, \
|
||||
NULL) < 0) { \
|
||||
result = -1; \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
DO_TEST(IndexToDiskName);
|
||||
DO_TEST(ParseDatastoreRelatedPath);
|
||||
|
||||
return result == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='cdrom'>
|
||||
<source file='cdrom.iso'/>
|
||||
<source file='[datastore] directory/cdrom.iso'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='cdrom'>
|
||||
<source file='cdrom.iso'/>
|
||||
<source file='[datastore] directory/cdrom.iso'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic'/>
|
||||
<source file='Fedora11.vmdk'/>
|
||||
<source file='[datastore] directory/Fedora11.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic' cache='writethrough'/>
|
||||
<source file='Debian1.vmdk'/>
|
||||
<source file='[datastore] directory/Debian1.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<disk type='file' device='cdrom'>
|
||||
<driver name='buslogic'/>
|
||||
<source file='Debian1-cdrom.iso'/>
|
||||
<source file='[datastore] directory/Debian1-cdrom.iso'/>
|
||||
<target dev='sdp' bus='scsi'/>
|
||||
</disk>
|
||||
<disk type='file' device='cdrom'>
|
||||
@@ -31,7 +31,7 @@
|
||||
<target dev='hdb' bus='ide'/>
|
||||
</disk>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian1-IDE.vmdk'/>
|
||||
<source file='[datastore] directory/Debian1-IDE.vmdk'/>
|
||||
<target dev='hdd' bus='ide'/>
|
||||
</disk>
|
||||
<disk type='block' device='floppy'>
|
||||
|
||||
@@ -14,15 +14,15 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic'/>
|
||||
<source file='Debian2.vmdk'/>
|
||||
<source file='[datastore] directory/Debian2.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<disk type='file' device='cdrom'>
|
||||
<source file='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Isos/debian-testing-amd64-netinst.iso'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Isos/debian-testing-amd64-netinst.iso'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<disk type='file' device='floppy'>
|
||||
<source file='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Debian2/dummy.flp'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Debian2/dummy.flp'/>
|
||||
<target dev='fdb' bus='fdc'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic'/>
|
||||
<source file='virtMonServ1.vmdk'/>
|
||||
<source file='[datastore] directory/virtMonServ1.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
@@ -26,15 +26,15 @@
|
||||
<source bridge='VM Switch 2'/>
|
||||
</interface>
|
||||
<serial type='file'>
|
||||
<source path='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/serial1.file'/>
|
||||
<source path='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/serial1.file'/>
|
||||
<target port='0'/>
|
||||
</serial>
|
||||
<parallel type='file'>
|
||||
<source path='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/parallel1.file'/>
|
||||
<source path='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/parallel1.file'/>
|
||||
<target port='0'/>
|
||||
</parallel>
|
||||
<console type='file'>
|
||||
<source path='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/serial1.file'/>
|
||||
<source path='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/serial1.file'/>
|
||||
<target port='0'/>
|
||||
</console>
|
||||
</devices>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='floppy'>
|
||||
<source file='floppy.flp'/>
|
||||
<source file='[datastore] directory/floppy.flp'/>
|
||||
<target dev='fda' bus='fdc'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl2.vmdk'/>
|
||||
<source file='[datastore] directory/Debian-System1-0-cl2.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl3.vmdk'/>
|
||||
<source file='[datastore] directory/Debian-System1-0-cl3.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl1.vmdk'/>
|
||||
<source file='[datastore] directory/Debian-System1-0-cl1.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl2.vmdk'/>
|
||||
<source file='[datastore] directory/Debian-System1-0-cl2.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<parallel type='file'>
|
||||
<source path='parallel0.file'/>
|
||||
<source path='[datastore] directory/parallel0.file'/>
|
||||
<target port='0'/>
|
||||
</parallel>
|
||||
</devices>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='buslogic'/>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='buslogic' cache='writethrough'/>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -12,11 +12,11 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<serial type='file'>
|
||||
<source path='serial0.file'/>
|
||||
<source path='[datastore] directory/serial0.file'/>
|
||||
<target port='0'/>
|
||||
</serial>
|
||||
<console type='file'>
|
||||
<source path='serial0.file'/>
|
||||
<source path='[datastore] directory/serial0.file'/>
|
||||
<target port='0'/>
|
||||
</console>
|
||||
</devices>
|
||||
|
||||
@@ -35,7 +35,8 @@ testCompareFiles(const char *vmx, const char *xml, esxVI_APIVersion apiVersion)
|
||||
goto failure;
|
||||
}
|
||||
|
||||
def = esxVMX_ParseConfig(NULL, vmxData, apiVersion);
|
||||
def = esxVMX_ParseConfig(NULL, NULL, vmxData, "datastore", "directory",
|
||||
apiVersion);
|
||||
|
||||
if (def == NULL) {
|
||||
goto failure;
|
||||
|
||||
@@ -7,4 +7,4 @@ memsize = "4"
|
||||
numvcpus = "1"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "cdrom-image"
|
||||
ide0:0.fileName = "cdrom.iso"
|
||||
ide0:0.fileName = "/vmfs/volumes/testing/isos/cdrom.iso"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<disk type='file' device='cdrom'>
|
||||
<source file='cdrom.iso'/>
|
||||
<source file='[testing] isos/cdrom.iso'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -8,4 +8,4 @@ numvcpus = "1"
|
||||
scsi0.present = "true"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "cdrom-image"
|
||||
scsi0:0.fileName = "cdrom.iso"
|
||||
scsi0:0.fileName = "/vmfs/volumes/testing/isos/cdrom.iso"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<disk type='file' device='cdrom'>
|
||||
<source file='cdrom.iso'/>
|
||||
<source file='[testing] isos/cdrom.iso'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -9,9 +9,9 @@ scsi0.present = "true"
|
||||
scsi0.virtualDev = "lsilogic"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "Fedora11.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Fedora11/Fedora11.vmdk"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "VM Network"
|
||||
ethernet0.connectionType = "bridged"
|
||||
ethernet0.addressType = "static"
|
||||
ethernet0.address = "00:50:56:91:48:C7"
|
||||
ethernet0.addressType = "generated"
|
||||
ethernet0.generatedAddress = "00:50:56:91:48:C7"
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic'/>
|
||||
<source file='Fedora11.vmdk'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Fedora11/Fedora11.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -13,11 +13,11 @@ scsi1.present = "true"
|
||||
scsi1.virtualDev = "buslogic"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "Debian1.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtDebian1/Debian1.vmdk"
|
||||
scsi0:0.writeThrough = "true"
|
||||
scsi1:0.present = "true"
|
||||
scsi1:0.deviceType = "cdrom-image"
|
||||
scsi1:0.fileName = "Debian1-cdrom.iso"
|
||||
scsi1:0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtDebian1/Debian1-cdrom.iso"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "cdrom-image"
|
||||
ide0:0.fileName = "/vmimages/tools-isoimages/linux.iso"
|
||||
@@ -26,7 +26,7 @@ ide0:1.deviceType = "atapi-cdrom"
|
||||
ide0:1.fileName = "/dev/scd0"
|
||||
ide1:1.present = "true"
|
||||
ide1:1.deviceType = "ata-hardDisk"
|
||||
ide1:1.fileName = "Debian1-IDE.vmdk"
|
||||
ide1:1.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtDebian1/Debian1-IDE.vmdk"
|
||||
floppy0.present = "true"
|
||||
floppy0.fileType = "device"
|
||||
floppy0.fileName = "/dev/fd0"
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic' cache='writethrough'/>
|
||||
<source file='Debian1.vmdk'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] virtDebian1/Debian1.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<disk type='file' device='cdrom'>
|
||||
<driver name='buslogic'/>
|
||||
<source file='Debian1-cdrom.iso'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] virtDebian1/Debian1-cdrom.iso'/>
|
||||
<target dev='sdp' bus='scsi'/>
|
||||
</disk>
|
||||
<disk type='file' device='cdrom'>
|
||||
@@ -31,7 +31,7 @@
|
||||
<target dev='hdb' bus='ide'/>
|
||||
</disk>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian1-IDE.vmdk'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] virtDebian1/Debian1-IDE.vmdk'/>
|
||||
<target dev='hdd' bus='ide'/>
|
||||
</disk>
|
||||
<disk type='block' device='floppy'>
|
||||
|
||||
@@ -10,7 +10,7 @@ scsi0.present = "true"
|
||||
scsi0.virtualDev = "lsilogic"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "Debian2.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Debian2/Debian2.vmdk"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "cdrom-image"
|
||||
ide0:0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Isos/debian-testing-amd64-netinst.iso"
|
||||
|
||||
@@ -14,15 +14,15 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic'/>
|
||||
<source file='Debian2.vmdk'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Debian2/Debian2.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<disk type='file' device='cdrom'>
|
||||
<source file='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Isos/debian-testing-amd64-netinst.iso'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Isos/debian-testing-amd64-netinst.iso'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<disk type='file' device='floppy'>
|
||||
<source file='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/Debian2/dummy.flp'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] Debian2/dummy.flp'/>
|
||||
<target dev='fdb' bus='fdc'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -9,17 +9,17 @@ scsi0.present = "true"
|
||||
scsi0.virtualDev = "lsilogic"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "virtMonServ1.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/virtMonServ1.vmdk"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "VM Network"
|
||||
ethernet0.connectionType = "bridged"
|
||||
ethernet0.addressType = "static"
|
||||
ethernet0.address = "00:50:56:91:66:D4"
|
||||
ethernet0.addressType = "generated"
|
||||
ethernet0.generatedAddress = "00:50:56:91:66:D4"
|
||||
ethernet1.present = "true"
|
||||
ethernet1.networkName = "VM Switch 2"
|
||||
ethernet1.connectionType = "bridged"
|
||||
ethernet1.addressType = "static"
|
||||
ethernet1.address = "00:50:56:91:0C:51"
|
||||
ethernet1.addressType = "generated"
|
||||
ethernet1.generatedAddress = "00:50:56:91:0C:51"
|
||||
serial0.present = "true"
|
||||
serial0.fileType = "file"
|
||||
serial0.fileName = "/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/serial1.file"
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='lsilogic'/>
|
||||
<source file='virtMonServ1.vmdk'/>
|
||||
<source file='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/virtMonServ1.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
@@ -26,15 +26,15 @@
|
||||
<source bridge='VM Switch 2'/>
|
||||
</interface>
|
||||
<serial type='file'>
|
||||
<source path='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/serial1.file'/>
|
||||
<source path='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/serial1.file'/>
|
||||
<target port='0'/>
|
||||
</serial>
|
||||
<parallel type='file'>
|
||||
<source path='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/parallel1.file'/>
|
||||
<source path='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/parallel1.file'/>
|
||||
<target port='0'/>
|
||||
</parallel>
|
||||
<console type='file'>
|
||||
<source path='/vmfs/volumes/498076b2-02796c1a-ef5b-000ae484a6a3/virtMonServ1/serial1.file'/>
|
||||
<source path='[498076b2-02796c1a-ef5b-000ae484a6a3] virtMonServ1/serial1.file'/>
|
||||
<target port='0'/>
|
||||
</console>
|
||||
</devices>
|
||||
|
||||
@@ -8,5 +8,5 @@ numvcpus = "1"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "VM Network"
|
||||
ethernet0.connectionType = "bridged"
|
||||
ethernet0.addressType = "static"
|
||||
ethernet0.address = "00:50:56:11:22:33"
|
||||
ethernet0.addressType = "generated"
|
||||
ethernet0.generatedAddress = "00:50:56:11:22:33"
|
||||
|
||||
@@ -9,5 +9,5 @@ ethernet0.present = "true"
|
||||
ethernet0.networkName = "VM Network"
|
||||
ethernet0.connectionType = "custom"
|
||||
ethernet0.vnet = "vmnet7"
|
||||
ethernet0.addressType = "static"
|
||||
ethernet0.address = "00:50:56:11:22:33"
|
||||
ethernet0.addressType = "generated"
|
||||
ethernet0.generatedAddress = "00:50:56:11:22:33"
|
||||
|
||||
@@ -9,5 +9,5 @@ ethernet0.present = "true"
|
||||
ethernet0.virtualDev = "e1000"
|
||||
ethernet0.networkName = "VM Network"
|
||||
ethernet0.connectionType = "bridged"
|
||||
ethernet0.addressType = "static"
|
||||
ethernet0.address = "00:50:56:11:22:33"
|
||||
ethernet0.addressType = "generated"
|
||||
ethernet0.generatedAddress = "00:50:56:11:22:33"
|
||||
|
||||
@@ -7,4 +7,4 @@ memsize = "4"
|
||||
numvcpus = "1"
|
||||
floppy0.present = "true"
|
||||
floppy0.fileType = "file"
|
||||
floppy0.fileName = "floppy.flp"
|
||||
floppy0.fileName = "/vmfs/volumes/testing/floppy.flp"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<disk type='file' device='floppy'>
|
||||
<source file='floppy.flp'/>
|
||||
<source file='[testing] floppy.flp'/>
|
||||
<target dev='fda' bus='fdc'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -7,7 +7,7 @@ memsize = "32"
|
||||
numvcpus = "1"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "ata-hardDisk"
|
||||
ide0:0.fileName = "Debian-System1-0-cl2.vmdk"
|
||||
ide0:0.fileName = "/vmfs/volumes/storage/Server1/Debian-System1-0-cl2.vmdk"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "net1"
|
||||
ethernet0.connectionType = "custom"
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl2.vmdk'/>
|
||||
<source file='[storage] Server1/Debian-System1-0-cl2.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -7,7 +7,7 @@ memsize = "32"
|
||||
numvcpus = "1"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "ata-hardDisk"
|
||||
ide0:0.fileName = "Debian-System1-0-cl3.vmdk"
|
||||
ide0:0.fileName = "/vmfs/volumes/storage/Server2/Debian-System1-0-cl3.vmdk"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "net1"
|
||||
ethernet0.connectionType = "custom"
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl3.vmdk'/>
|
||||
<source file='[storage] Server2/Debian-System1-0-cl3.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -7,7 +7,7 @@ memsize = "32"
|
||||
numvcpus = "1"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "ata-hardDisk"
|
||||
ide0:0.fileName = "Debian-System1-0-cl1.vmdk"
|
||||
ide0:0.fileName = "/vmfs/volumes/storage/Router/Debian-System1-0-cl1.vmdk"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "net1"
|
||||
ethernet0.connectionType = "custom"
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl1.vmdk'/>
|
||||
<source file='[storage] Router/Debian-System1-0-cl1.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -7,7 +7,7 @@ memsize = "264"
|
||||
numvcpus = "1"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "ata-hardDisk"
|
||||
ide0:0.fileName = "Debian-System1-0-cl2.vmdk"
|
||||
ide0:0.fileName = "/vmfs/volumes/storage/Client/Debian-System1-0-cl2.vmdk"
|
||||
ethernet0.present = "true"
|
||||
ethernet0.networkName = "net2"
|
||||
ethernet0.connectionType = "custom"
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<on_crash>destroy</on_crash>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='Debian-System1-0-cl2.vmdk'/>
|
||||
<source file='[storage] Client/Debian-System1-0-cl2.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
<interface type='bridge'>
|
||||
|
||||
@@ -7,4 +7,4 @@ memsize = "4"
|
||||
numvcpus = "1"
|
||||
ide0:0.present = "true"
|
||||
ide0:0.deviceType = "ata-hardDisk"
|
||||
ide0:0.fileName = "harddisk.vmdk"
|
||||
ide0:0.fileName = "/vmfs/volumes/datastore/directory/harddisk.vmdk"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='hda' bus='ide'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -8,4 +8,4 @@ numvcpus = "1"
|
||||
scsi0.present = "true"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "harddisk.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/datastore/directory/harddisk.vmdk"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -7,4 +7,4 @@ memsize = "4"
|
||||
numvcpus = "1"
|
||||
parallel0.present = "true"
|
||||
parallel0.fileType = "file"
|
||||
parallel0.fileName = "parallel0.file"
|
||||
parallel0.fileName = "/vmfs/volumes/datastore/directory/parallel0.file"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<parallel type='file'>
|
||||
<source path='parallel0.file'/>
|
||||
<source path='[datastore] directory/parallel0.file'/>
|
||||
<target port='0'/>
|
||||
</parallel>
|
||||
</devices>
|
||||
|
||||
@@ -9,4 +9,4 @@ scsi0.present = "true"
|
||||
scsi0.virtualDev = "buslogic"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "harddisk.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/datastore/directory/harddisk.vmdk"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='buslogic'/>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -9,5 +9,5 @@ scsi0.present = "true"
|
||||
scsi0.virtualDev = "buslogic"
|
||||
scsi0:0.present = "true"
|
||||
scsi0:0.deviceType = "scsi-hardDisk"
|
||||
scsi0:0.fileName = "harddisk.vmdk"
|
||||
scsi0:0.fileName = "/vmfs/volumes/datastore/directory/harddisk.vmdk"
|
||||
scsi0:0.writeThrough = "true"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<devices>
|
||||
<disk type='file' device='disk'>
|
||||
<driver name='buslogic' cache='writethrough'/>
|
||||
<source file='harddisk.vmdk'/>
|
||||
<source file='[datastore] directory/harddisk.vmdk'/>
|
||||
<target dev='sda' bus='scsi'/>
|
||||
</disk>
|
||||
</devices>
|
||||
|
||||
@@ -7,5 +7,5 @@ memsize = "4"
|
||||
numvcpus = "1"
|
||||
serial0.present = "true"
|
||||
serial0.fileType = "file"
|
||||
serial0.fileName = "serial0.file"
|
||||
serial0.fileName = "/vmfs/volumes/datastore/directory/serial0.file"
|
||||
serial0.yieldOnMsrRead = "true"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</os>
|
||||
<devices>
|
||||
<serial type='file'>
|
||||
<source path='serial0.file'/>
|
||||
<source path='[datastore] directory/serial0.file'/>
|
||||
<target port='0'/>
|
||||
</serial>
|
||||
</devices>
|
||||
|
||||
@@ -89,7 +89,7 @@ testCompareFiles(const char *xml, const char *vmx, esxVI_APIVersion apiVersion)
|
||||
goto failure;
|
||||
}
|
||||
|
||||
formatted = esxVMX_FormatConfig(NULL, def, apiVersion);
|
||||
formatted = esxVMX_FormatConfig(NULL, NULL, def, apiVersion);
|
||||
|
||||
if (formatted == NULL) {
|
||||
goto failure;
|
||||
|
||||
Reference in New Issue
Block a user