#
# This config is an example usage of ktest.pl with a kvm guest
#
# The guest is called 'Guest' and this would be something that
# could be run on the host to test a virtual machine target.

MACHINE = Guest


# Use virsh to read the serial console of the guest
CONSOLE =  virsh console ${MACHINE}

#*************************************#
# This part is the same as test.conf  #
#*************************************#

# The include files will set up the type of test to run. Just set TEST to
# which test you want to run.
#
# TESTS = patchcheck, randconfig, boot, test, config-bisect, bisect, min-config
#
# See the include/*.conf files that define these tests
#
TEST := patchcheck

# Some tests may have more than one test to run. Define MULTI := 1 to run
# the extra tests.
MULTI := 0

# In case you want to differentiate which type of system you are testing
BITS := 64

# REBOOT = none, error, fail, empty
#  See include/defaults.conf
REBOOT := empty


# The defaults file will set up various settings that can be used by all
# machine configs.
INCLUDE include/defaults.conf


#*************************************#
# Now we are different from test.conf #
#*************************************#


# The example here assumes that Guest is running a Fedora release
# that uses dracut for its initfs. The POST_INSTALL will be executed
# after the install of the kernel and modules are complete.
#
POST_INSTALL = ${SSH} /sbin/dracut -f /boot/initramfs-test.img $KERNEL_VERSION

# Guests sometimes get stuck on reboot. We wait 3 seconds after running
# the reboot command and then  do a full power-cycle of the guest.
# This forces the guest to restart.
#
POWERCYCLE_AFTER_REBOOT = 3

# We do the same after the halt command, but this time we wait 20 seconds.
POWEROFF_AFTER_HALT = 20


# As the defaults.conf file has a POWER_CYCLE option already defined,
# and options can not be defined in the same section more than once
# (all DEFAULTS sections are considered the same). We use the
# DEFAULTS OVERRIDE to tell ktest.pl to ignore the previous defined
# options, for the options set in the OVERRIDE section.
#
DEFAULTS OVERRIDE

# Instead of using the default POWER_CYCLE option defined in
# defaults.conf, we use virsh to cycle it. To do so, we destroy
# the guest, wait 5 seconds, and then start it up again.
# Crude, but effective.
#
POWER_CYCLE = virsh destroy ${MACHINE}; sleep 5; virsh start ${MACHINE}


DEFAULTS

# The following files each handle a different test case.
# Having them included allows you to set up more than one machine and share
# the same tests.
INCLUDE include/patchcheck.conf
INCLUDE include/tests.conf
INCLUDE include/bisect.conf
INCLUDE include/min-config.conf
