Hello.

I have few questions about Cartesian config files.
Could you help me?


1.
Usually SpiceQE's tests require 2 VMs.

Typical schema is:  vm1 <-test-> vm2

Our tests require 2 VMs, one of them is a spice client (running on vnc) the 
other is a guest using spice server

Q: What do I want?
A: I want flexible choose of available OSes.

We could see list at:  --list-guests or backends/qemu/cfg/guest-os.cfg

I would want to increase the flexibility of our available clients and guests 
(client and guest can use different operating systems)
and use the list at --list-guests or guest-os.cfg instead of having a few 
predefined ones in our config file

For example, I want run test for next VMs: RHEL.7.1 <-test-> RHEL.6.devel

I want to escape hard-coded beforehand combinations.

#run currently allows specification of only one virtual machine:
./run allows to specify only one filter for guest-os:
-g GUEST_OS, --guest-os=GUEST_OS
But not for the second, third,...

As you know virt-test can run more than two VMs at same time for one test.

What is the best way to specify filter for the second, third,.. OS ?

Again: I do not want have hardcoded combinations at Cartesion files.
That is what we have now.



MORE!



I am not sure about how to redo our cartesian configuration to achieve this
Do you have any hints?

For example: Let us take ONE test. RHEL.6.devel <-> RHEL.7.1
#                               Connect  from RHEL.6.devel to 7.1.

The name of dictionary would be something like:
...something-RHEL-6-devel-x86-64-guest-RHEL-7-1-x86-64-something...

In order to define the second VM, virt-test allows the use of suffixes with the 
name of the vm

To successful run we have to somehow provide values with suffixes: _vm1
_vm2:
shutdown_command_vm1 = xxxx
shutdown_command_vm2 = yyyy

The issue however is, that these default values in the dictionary get replaced, 
unless the suffix is defined
We copy/redefine _standard_ values from guest_os.cfg to make it possible. 
We should add suffixes with standard values, that are already in guest_os.cfg.

tjamrisk@ suggest next scheme:

Modify --bootstrap process (in tp-spice; or just a simple script) to create:
backends/<backend>/cfg/guest-os-vm1.cfg
backends/<backend>/cfg/guest-os-vm2.cfg
and add suffixes to _vm1/vm_2 to each of the variable names

and the use something like (not accurate syntax):
variant:
  guest:
    include guest-os-vm1.cfg
variant:
  client:
    include guest-os-vm2.cfg

This will allow as run different OS for one test.

Could you suggest another solution/approach?




MORE.



Do you know how to wisely separate stages: Build new software/Install VMs/Run
test?

Is it okay to use independent cartesion file for each stage? And invokde ./run 
three times ?


Thanks!

_______________________________________________
Virt-test-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/virt-test-devel

Reply via email to