[libvirt] [PATCHv3 3/4] VMX: Add a VMWare Fusion 5 configuration for tests

Michal Privoznik mprivozn at redhat.com
Thu Aug 29 10:19:13 UTC 2013


On 28.08.2013 23:53, Doug Goldstein wrote:
> A user was having an issue with this specific VMWare Fusion config and
> he gave me permission to add it as part of our test suite to further
> expand our VMX test coverage. Unfortunately our VMX parser and
> generator does not support many features contained within and just
> silently ignores fields it does not understand so they had to
> be removed out in the xml2vmx test. The original unmodified version
> exists in the vmx2xml test.
> ---
>  tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.vmx | 88 ++++++++++++++++++++++
>  tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.xml | 38 ++++++++++
>  tests/vmx2xmltest.c                                |  2 +
>  tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.vmx | 30 ++++++++
>  tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.xml | 40 ++++++++++
>  tests/xml2vmxtest.c                                |  2 +
>  6 files changed, 200 insertions(+)
>  create mode 100644 tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.vmx
>  create mode 100644 tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.xml
>  create mode 100644 tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.vmx
>  create mode 100644 tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.xml
> 
> diff --git a/tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.vmx b/tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.vmx
> new file mode 100644
> index 0000000..ef6af19
> --- /dev/null
> +++ b/tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.vmx
> @@ -0,0 +1,88 @@
> +.encoding = "UTF-8"
> +config.version = "8"
> +virtualHW.version = "9"
> +memsize = "3572"
> +MemAllowAutoScaleDown = "FALSE"
> +MemTrimRate = "-1"
> +displayName = "ATTM_VM"
> +guestOS = "winxppro"
> +numvcpus = "2"
> +sound.present = "TRUE"
> +sound.filename = "-1"
> +sound.autodetect = "TRUE"
> +usb.present = "TRUE"
> +ethernet0.present = "TRUE"
> +ethernet0.addressType = "generated"
> +ethernet0.connectionType = "bridged"
> +ethernet1.present = "TRUE"
> +ethernet1.addressType = "generated"
> +ethernet1.connectionType = "bridged"
> +scsi0:0.present = "TRUE"
> +scsi0:0.fileName = "ATTM_VM.vmdk"
> +pciBridge0.present = "TRUE"
> +tools.upgrade.policy = "useGlobal"
> +ehci.present = "TRUE"
> +ide0:0.present = "TRUE"
> +ide0:0.autodetect = "TRUE"
> +ide0:0.filename = "auto detect"
> +ide0:0.deviceType = "atapi-cdrom"
> +scsi0.present = "TRUE"
> +scsi0.virtualDev = "buslogic"
> +buslogic.noDriver = "FALSE"
> +extendedConfigFile = "ATTM_VM.vmxf"
> +virtualHW.productCompatibility = "hosted"
> +pciBridge4.present = "TRUE"
> +pciBridge4.virtualDev = "pcieRootPort"
> +pciBridge4.pciSlotNumber = "21"
> +pciBridge4.functions = "8"
> +pciBridge5.present = "TRUE"
> +pciBridge5.virtualDev = "pcieRootPort"
> +pciBridge5.pciSlotNumber = "22"
> +pciBridge5.functions = "8"
> +pciBridge6.present = "TRUE"
> +pciBridge6.virtualDev = "pcieRootPort"
> +pciBridge6.pciSlotNumber = "23"
> +pciBridge6.functions = "8"
> +pciBridge7.present = "TRUE"
> +pciBridge7.virtualDev = "pcieRootPort"
> +pciBridge7.pciSlotNumber = "24"
> +pciBridge7.functions = "8"
> +vmci0.present = "TRUE"
> +hpet0.present = "TRUE"
> +usb.vbluetooth.startConnected = "TRUE"
> +mks.enable3d = "TRUE"
> +ethernet0.linkStatePropagation.enable = "TRUE"
> +ethernet1.linkStatePropagation.enable = "TRUE"
> +ide0:0.startConnected = "FALSE"
> +ethernet0.generatedAddress = "00:0c:29:3b:64:ea"
> +ethernet1.generatedAddress = "00:0c:29:3b:64:f4"
> +vmci0.id = "-952408854"
> +tools.syncTime = "FALSE"
> +uuid.location = "56 4d 70 88 01 a1 98 32-e7 2b 67 90 c7 3b 64 ea"
> +uuid.bios = "56 4d 70 88 01 a1 98 32-e7 2b 67 90 c7 3b 64 ea"
> +cleanShutdown = "TRUE"
> +replay.supported = "FALSE"
> +replay.filename = ""
> +scsi0:0.redo = ""
> +pciBridge0.pciSlotNumber = "17"
> +scsi0.pciSlotNumber = "16"
> +usb.pciSlotNumber = "32"
> +ethernet0.pciSlotNumber = "33"
> +ethernet1.pciSlotNumber = "34"
> +sound.pciSlotNumber = "35"
> +ehci.pciSlotNumber = "36"
> +vmci0.pciSlotNumber = "37"
> +usb:1.present = "TRUE"
> +ethernet0.generatedAddressOffset = "0"
> +ethernet1.generatedAddressOffset = "10"
> +vmotion.checkpointFBSize = "134217728"
> +usb:1.speed = "2"
> +usb:1.deviceType = "hub"
> +usb:1.port = "1"
> +usb:1.parent = "-1"
> +floppy0.startConnected = "FALSE"
> +softPowerOff = "FALSE"
> +usb:0.present = "TRUE"
> +usb:0.deviceType = "hid"
> +usb:0.port = "0"
> +usb:0.parent = "-1"
> diff --git a/tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.xml b/tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.xml
> new file mode 100644
> index 0000000..dd8c12a
> --- /dev/null
> +++ b/tests/vmx2xmldata/vmx2xml-fusion-in-the-wild-1.xml
> @@ -0,0 +1,38 @@
> +<domain type='vmware'>
> +  <name>ATTM_VM</name>
> +  <uuid>564d7088-01a1-9832-e72b-6790c73b64ea</uuid>
> +  <memory unit='KiB'>3657728</memory>
> +  <currentMemory unit='KiB'>3657728</currentMemory>
> +  <vcpu placement='static'>2</vcpu>
> +  <os>
> +    <type arch='i686'>hvm</type>
> +  </os>
> +  <clock offset='utc'/>
> +  <on_poweroff>destroy</on_poweroff>
> +  <on_reboot>restart</on_reboot>
> +  <on_crash>destroy</on_crash>
> +  <devices>
> +    <disk type='file' device='disk'>
> +      <source file='[datastore] directory/ATTM_VM.vmdk'/>
> +      <target dev='sda' bus='scsi'/>
> +      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> +    </disk>
> +    <disk type='block' device='cdrom'>

This fails the test until we add:

<source dev='auto detect'/>

> +      <target dev='hda' bus='ide' tray='open'/>
> +      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> +    </disk>
> +    <controller type='scsi' index='0' model='buslogic'/>
> +    <controller type='ide' index='0'/>
> +    <interface type='bridge'>
> +      <mac address='00:0c:29:3b:64:ea'/>
> +      <source bridge=''/>
> +    </interface>
> +    <interface type='bridge'>
> +      <mac address='00:0c:29:3b:64:f4'/>
> +      <source bridge=''/>
> +    </interface>
> +    <video>
> +      <model type='vmvga' vram='4096'/>
> +    </video>
> +  </devices>
> +</domain>
> diff --git a/tests/vmx2xmltest.c b/tests/vmx2xmltest.c
> index 479c84c..9e6e9fd 100644
> --- a/tests/vmx2xmltest.c
> +++ b/tests/vmx2xmltest.c
> @@ -286,6 +286,8 @@ mymain(void)
>      DO_TEST("ws-in-the-wild-1", "ws-in-the-wild-1");
>      DO_TEST("ws-in-the-wild-2", "ws-in-the-wild-2");
>  
> +    DO_TEST("fusion-in-the-wild-1", "fusion-in-the-wild-1");
> +
>      DO_TEST("annotation", "annotation");
>  
>      DO_TEST("smbios", "smbios");
> diff --git a/tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.vmx b/tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.vmx
> new file mode 100644
> index 0000000..7f6551b
> --- /dev/null
> +++ b/tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.vmx
> @@ -0,0 +1,30 @@
> +.encoding = "UTF-8"
> +config.version = "8"
> +virtualHW.version = "9"
> +guestOS = "other"
> +uuid.bios = "56 4d 70 88 01 a1 98 32-e7 2b 67 90 c7 3b 64 ea"
> +displayName = "ATTM_VM"
> +memsize = "3572"
> +numvcpus = "2"
> +scsi0.present = "true"
> +scsi0.virtualDev = "buslogic"
> +scsi0:0.present = "true"
> +scsi0:0.deviceType = "scsi-hardDisk"
> +scsi0:0.fileName = "/vmfs/volumes/datastore/directory/ATTM_VM.vmdk"
> +ide0:0.present = "true"
> +ide0:0.autodetect = "true"

This ^^^

> +ide0:0.deviceType = "atapi-cdrom"
> +ide0:0.fileName = "auto detect"

and this ^^^ line make the testsuite fail.

> +floppy0.present = "false"
> +floppy1.present = "false"
> +ethernet0.present = "true"
> +ethernet0.connectionType = "bridged"
> +ethernet0.addressType = "generated"
> +ethernet0.generatedAddress = "00:0c:29:3b:64:ea"
> +ethernet0.generatedAddressOffset = "0"
> +ethernet1.present = "true"
> +ethernet1.connectionType = "bridged"
> +ethernet1.addressType = "generated"
> +ethernet1.generatedAddress = "00:0c:29:3b:64:f4"
> +ethernet1.generatedAddressOffset = "0"
> +svga.vramSize = "4194304"
> diff --git a/tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.xml b/tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.xml
> new file mode 100644
> index 0000000..4a09add
> --- /dev/null
> +++ b/tests/xml2vmxdata/xml2vmx-fusion-in-the-wild-1.xml
> @@ -0,0 +1,40 @@
> +<domain type='vmware'>
> +  <name>ATTM_VM</name>
> +  <uuid>564d7088-01a1-9832-e72b-6790c73b64ea</uuid>
> +  <memory unit='KiB'>3657728</memory>
> +  <currentMemory unit='KiB'>3657728</currentMemory>
> +  <vcpu placement='static'>2</vcpu>
> +  <os>
> +    <type arch='i686'>hvm</type>
> +  </os>
> +  <clock offset='utc'/>
> +  <on_poweroff>destroy</on_poweroff>
> +  <on_reboot>restart</on_reboot>
> +  <on_crash>destroy</on_crash>
> +  <devices>
> +    <disk type='file' device='disk'>
> +      <source file='[datastore] directory/ATTM_VM.vmdk'/>
> +      <target dev='sda' bus='scsi'/>
> +      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> +    </disk>
> +    <disk type='block' device='cdrom'>
> +      <driver name='atapi'/>
> +      <target dev='hda' bus='ide' tray='open'/>
> +      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
> +    </disk>
> +    <controller type='scsi' index='0' model='buslogic'/>
> +    <controller type='ide' index='0'/>
> +    <interface type='bridge'>
> +      <mac address='00:0c:29:3b:64:ea'/>
> +      <source bridge=''/>
> +    </interface>
> +    <interface type='bridge'>
> +      <mac address='00:0c:29:3b:64:f4'/>
> +      <source bridge=''/>
> +    </interface>
> +    <video>
> +      <model type='vmvga' vram='4096'/>
> +    </video>
> +    <memballoon model='none'/>
> +  </devices>
> +</domain>
> diff --git a/tests/xml2vmxtest.c b/tests/xml2vmxtest.c
> index cb1c29c..ebd54fc 100644
> --- a/tests/xml2vmxtest.c
> +++ b/tests/xml2vmxtest.c
> @@ -299,6 +299,8 @@ mymain(void)
>      DO_TEST("ws-in-the-wild-1", "ws-in-the-wild-1", 8);
>      DO_TEST("ws-in-the-wild-2", "ws-in-the-wild-2", 8);
>  
> +    DO_TEST("fusion-in-the-wild-1", "fusion-in-the-wild-1", 9);
> +
>      DO_TEST("annotation", "annotation", 4);
>  
>      DO_TEST("smbios", "smbios", 4);
> 




More information about the libvir-list mailing list