[dts] [PATCH v1 6/8] tests/vf_vlan: use virt_common for VM creation
Herbert Guan
herbert.guan at arm.com
Fri Feb 9 07:26:03 CET 2018
Use 'VM' form virt_common instead of 'QEMUKvm' from qemu_kvm for VM
creation. This will allow VM type selection (kvm/libvirt etc.) for
each VM defined in test suite's config file.
Signed-off-by: Herbert Guan <herbert.guan at arm.com>
---
conf/vf_vlan.cfg | 111 +++++++++++++++++++++++++++++++++++++++++++++
tests/TestSuite_vf_vlan.py | 4 +-
2 files changed, 113 insertions(+), 2 deletions(-)
diff --git a/conf/vf_vlan.cfg b/conf/vf_vlan.cfg
index 94e68b4..31ddbc9 100644
--- a/conf/vf_vlan.cfg
+++ b/conf/vf_vlan.cfg
@@ -1,11 +1,122 @@
+# QEMU options
+# name
+# name: vm0
+#
+# virt_type
+# virt_type: [ KVM | LIBVIRT ]
+#
+# os
+# loader: /path/to/loader/file.fd
+# note: applicable for libvirt only
+# nvram: /path/to/nvram/file.fd
+# note: applicable for libvirt only
+#
+# enable_kvm
+# enable: [yes | no]
+#
+# cpu
+# model: [host | core2duo | ...]
+# usage:
+# choose model value from the command
+# qemu-system-x86_64 -cpu help
+# number: '4' #number of vcpus
+# cpupin: '3 4 5 6' # host cpu list
+#
+# mem
+# size: 1024
+# note: Set VM memory size in MB
+#
+# disk
+# file: /path/to/image/test.img
+# opt_format: [ raw | qcow2 | ... ]
+# opt_bus: [ virtio | scsi | ... ]
+# note: applicable for libvirt only
+# opt_dev: [ sda | sdb | vda | ... ]
+# note: applicable for libvirt only
+# opt_controller: [ virtio-scsi | ...]
+# note: applicable for libvirt only
+#
+# net
+# type: [nic | user | tap | bridge | ...]
+# nic
+# opt_vlan: 0
+# note: Default is 0.
+# opt_macaddr: 00:00:00:00:01:01
+# note: if creating a nic, it`s better to specify a MAC,
+# else it will get a random number.
+# opt_model:["e1000" | "virtio" | "i82551" | ...]
+# note: Default is e1000.
+# opt_name: 'nic1'
+# opt_addr: ''
+# note: PCI cards only.
+# opt_vectors:
+# note: This option currently only affects virtio cards.
+# user
+# opt_vlan: 0
+# note: default is 0.
+# opt_hostfwd: [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport
+# note: If not specified, it will be setted automatically.
+# tap
+# opt_vlan: 0
+# note: default is 0.
+# opt_br: br0
+# note: if choosing tap, need to specify bridge name,
+# else it will be br0.
+# opt_script: QEMU_IFUP_PATH
+# note: if not specified, default is self.QEMU_IFUP_PATH.
+# opt_downscript: QEMU_IFDOWN_PATH
+# note: if not specified, default is self.QEMU_IFDOWN_PATH.
+#
+# device
+# driver: [pci-assign | virtio-net-pci | ...]
+# pci-assign
+# prop_host: 08:00.0
+# prop_addr: 00:00:00:00:01:02
+# virtio-net-pci
+# prop_netdev: mynet1
+# prop_id: net1
+# prop_mac: 00:00:00:00:01:03
+# prop_bus: pci.0
+# prop_addr: 0x3
+#
+# monitor
+# port: 6061
+# note: if adding monitor to vm, need to specicy
+# this port, else it will get a free port
+# on the host machine.
+#
+# serial_port
+# enable: [yes | no]
+# opt_type: [pty | unix]
+#
+# vnc
+# displayNum: 1
+# note: you can choose a number not used on the host.
+#
+# daemon
+# enable: 'yes'
+# note:
+# By default VM will start with the daemonize status.
+# Not support starting it on the stdin now.
+
[vm0]
+# Default virt_type is KVM
+#virt_type =
+# virt_type=LIBVIRT;
+# os option is applicable for libvirt only
+#os =
+# loader=/usr/share/AAVMF/AAVMF_CODE.fd,nvram=/var/lib/libvirt/qemu/nvram/DTSVM_VARS.fd;
cpu =
model=host,number=4,cpupin=5 6 7 8;
disk =
file=/storage/vm-image/vm0.img;
+# Example for libvirt:
+# file=/var/lib/libvirt/images/DTSVM.qcow2,opt_format=qcow2,opt_bus=scsi,opt_dev=sda,opt_controller=virtio-scsi;
login =
user=root,password=tester;
+# vnc option is not supported by libvirt yet, comment out below 2 lines if using libvirt
vnc =
displayNum=1;
+# daemon option is not supported by libvirt yet, comment out below 2 lines if using libvirt
daemon =
enable=yes;
diff --git a/tests/TestSuite_vf_vlan.py b/tests/TestSuite_vf_vlan.py
index c0b26a3..da9330d 100644
--- a/tests/TestSuite_vf_vlan.py
+++ b/tests/TestSuite_vf_vlan.py
@@ -3,7 +3,7 @@
import re
import time
-from qemu_kvm import QEMUKvm
+from virt_common import VM
from test_case import TestCase
from pmd_output import PmdOutput
from packet import Packet, sniff_packets, load_sniff_packets
@@ -114,7 +114,7 @@ class TestVfVlan(TestCase):
vf1_prop = {'opt_host': self.sriov_vfs_port_1[0].pci}
# set up VM0 ENV
- self.vm0 = QEMUKvm(self.dut, 'vm0', 'vf_vlan')
+ self.vm0 = VM(self.dut, 'vm0', 'vf_vlan')
self.vm0.set_vm_device(driver=self.vf_assign_method, **vf0_prop)
self.vm0.set_vm_device(driver=self.vf_assign_method, **vf1_prop)
self.vm_dut_0 = self.vm0.start()
--
1.8.3.1
More information about the dts
mailing list